Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/afbjorklund/podman-full
https://github.com/afbjorklund/podman-full
debian podman ubuntu
Last synced: 24 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/afbjorklund/podman-full
- Owner: afbjorklund
- License: apache-2.0
- Created: 2024-02-04T12:32:31.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-08-05T14:15:55.000Z (3 months ago)
- Last Synced: 2024-08-06T11:58:26.640Z (3 months ago)
- Topics: debian, podman, ubuntu
- Language: Dockerfile
- Homepage: https://podman.io/docs/installation
- Size: 51.8 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Build script for building
* conmon
* crun* netavark
* catatonitInstalled files for `podman-full`, excluding documentation:
* [podman-files.txt](./podman-files.txt)
----
Build script adapted from
* containerd
* runc* cni-plugins
* tiniInstalled files for `nerdctl-full`, excluding documentation:
* [nerdctl-files.txt](./nerdctl-files.txt)
----
## Building
The default `make` target will build an image, and export it.
You can set which engine to use, with the `DOCKER` variable.
## Installation
Normally in [lima](https://lima-vm.io), the archive is just extracted on the lima:
`sudo tar Cxzf /usr/local nerdctl-full.tgz`
### Dependencies
Some dependencies are required, with `sudo apt install`.
* [dependencies.txt](./dependencies.txt)
### Configuration
You are required to add a `/etc/containers/registries.conf`.
```
Error: [...] no containers-registries.conf(5) was found
```As well as `/etc/containers/policy.json` configuration file.
```
Error: open /etc/containers/policy.json: no such file or directory
```*
### Shortnames
You might also want to add a `shortnames.conf` configuration:
`/etc/containers/registries.conf.d/000-shortnames.conf`
Otherwise you will get an interactive question, such as:
```
? Please select an image:
▸ docker.io/library/alpine:latest
quay.io/alpine:latest
```*
### User Session
Need to make sure to have `newuidmap` and a dbus session.
```
exec: "newuidmap": executable file not found in $PATH
``````
WARN[0000] The cgroupv2 manager is set to systemd
but there is no systemd user session available
WARN[0000] Falling back to --cgroup-manager=cgroupfs
```They are available as packages, but needs to be started.
```
sudo apt-get install -y uidmap dbus-user-session
``````
systemctl --user enable --now dbus
```### Networking
Need to install `iptables`, for network namespaces.
```
sudo apt-get install -y iptables
```## Testing
Template based on `debian`:
* [lima.yaml](./lima.yaml)
Assuming that lima is installed, and archive is built:
```shell
mkdir -p /tmp/lima
cp policy.json registries.conf podman-full-4.9.3-linux-amd64.tar.gz /tmp/lima
limactl start ./lima.yaml
export LIMA_INSTANCE=limalima sudo mkdir /etc/containers
lima sudo cp /tmp/lima/policy.json /tmp/lima/registries.conf /etc/containers
lima sudo tar Cxzf /usr/local /tmp/lima/podman-full-4.9.3-linux-amd64.tar.gz
lima systemctl --user enable --now podman.socket
```After that, you can add forwarding of the `podman.sock`:
```yaml
portForwards:
- guestSocket: "/run/user/{{.UID}}/podman/podman.sock"
hostSocket: "{{.Dir}}/sock/podman.sock"
```And run podman remotely:
`podman.lima version`
You can also run it locally:
`lima podman version`