Skip to content

Commit 1ae5d5b

Browse files
Georgios Ntoutsosananos
authored andcommitted
Update installation instructions, add linting instructions
Signed-off-by: Georgios Ntoutsos <[email protected]> Reviewed-by: Anastassios Nanos <[email protected]> Reviewed-by: Charalampos Mainas <[email protected]> Approved-by: Anastassios Nanos <[email protected]> PR: #11
1 parent 89fa71c commit 1ae5d5b

File tree

2 files changed

+35
-7
lines changed

2 files changed

+35
-7
lines changed

README.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ To run a simple `urunc` example locally, you need to address a few dependencies:
5454
If you already have these requirements, you can run a test container using `nerdctl`:
5555

5656
```bash
57-
sudo nerdctl run --rm -ti --snapshotter devmapper --runtime io.containerd.urunc.v2 harbor.nbfc.io/nubificus/redis-hvt:annotated unikernel
57+
sudo nerdctl run --rm -ti --snapshotter devmapper --runtime io.containerd.urunc.v2 harbor.nbfc.io/nubificus/urunc/redis-hvt-rump:latest unikernel
5858
```
5959

6060
![demo](docs/img/urunc-nerdctl-example.gif)
@@ -67,6 +67,18 @@ The setup process may differ depending on your system and requirements. A full s
6767

6868
To use `urunc` with an existing Kubernetes cluster, you can follow the [instructions in the docs](docs/How-to-urunc-on-k8s.md).
6969

70+
## Linting
71+
72+
To locally lint the source code using Docker, run:
73+
74+
```bash
75+
git clone https://github.com/nubificus/urunc.git
76+
cd urunc
77+
docker run --rm -v $(pwd):/app -w /app golangci/golangci-lint:v1.53.3 golangci-lint run -v --timeout=5m
78+
# OR
79+
sudo nerdctl run --rm -v $(pwd):/app -w /app golangci/golangci-lint:v1.53.3 golangci-lint run -v --timeout=5m
80+
```
81+
7082
## License
7183

7284
[Apache License 2.0](LICENSE)

docs/Installation.md

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,14 @@ sudo apt-get update
2424
sudo apt-get upgrade -y
2525
```
2626

27+
### Install required apt packages
28+
29+
The following apt packages are required to complete the installation. Depending on your specific needs, some of them may not be neccessary in your use case.
30+
31+
```bash
32+
sudo apt-get install git wget bc make build-essential -y
33+
```
34+
2735
### Install Go
2836

2937
To install Go 1.20.6:
@@ -35,6 +43,7 @@ sudo tar -C /usr/local -xzf go1.20.6.linux-$(dpkg --print-architecture).tar.gz
3543
sudo tee -a /etc/profile > /dev/null << 'EOT'
3644
export PATH=$PATH:/usr/local/go/bin
3745
EOT
46+
rm -f go1.20.6.linux-$(dpkg --print-architecture).tar.gz
3847
```
3948

4049

@@ -185,20 +194,27 @@ Now, we are ready to build and run our unikernel images!
185194

186195
## Run an example unikernel
187196

188-
### Install solo5-hvt
197+
### Install solo5-hvt
198+
199+
First, let's install the apt packages required to build solo5:
200+
201+
```bash
202+
sudo apt-get install libseccomp-dev pkg-config gcc -y
203+
```
189204

190-
First, let's download and install `solo5-hvt`.
205+
Next, we can clone, build and install `solo5-hvt`.
191206

192207
```bash
193-
curl -L -o solo5-hvt https://s3.nubificus.co.uk/bima/$(uname -m)/solo5
194-
sudo mv solo5-hvt /usr/local/bin
195-
sudo chmod +x /usr/local/bin/solo5-hvt
208+
git clone -b v0.6.9 https://github.com/Solo5/solo5.git
209+
cd solo5
210+
./configure.sh && make -j$(nproc)
211+
sudo cp tenders/hvt/solo5-hvt /usr/local/bin
196212
```
197213

198214
### Run a redis unikernel
199215

200216
Now, let's run a unikernel image:
201217

202218
```bash
203-
sudo nerdctl run --rm -ti --snapshotter devmapper --runtime io.containerd.urunc.v2 harbor.nbfc.io/nubificus/redis-hvt:annotated unikernel
219+
sudo nerdctl run --rm -ti --snapshotter devmapper --runtime io.containerd.urunc.v2 harbor.nbfc.io/nubificus/urunc/redis-hvt-rump:latest unikernel
204220
```

0 commit comments

Comments
 (0)