summaryrefslogtreecommitdiff
path: root/contrib/systemd
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/systemd')
-rw-r--r--contrib/systemd/README.md86
-rw-r--r--contrib/systemd/auto-update/podman-auto-update.service11
-rw-r--r--contrib/systemd/auto-update/podman-auto-update.timer9
-rw-r--r--contrib/systemd/system/podman-docker.conf1
-rw-r--r--contrib/systemd/system/podman.service2
-rw-r--r--contrib/systemd/user/podman.service2
6 files changed, 31 insertions, 80 deletions
diff --git a/contrib/systemd/README.md b/contrib/systemd/README.md
index 20f11467a..9f1d37792 100644
--- a/contrib/systemd/README.md
+++ b/contrib/systemd/README.md
@@ -2,101 +2,31 @@
## system-wide (podman service run as root)
-The following unit file examples assume:
- 1. copied the `service` executable into `/usr/local/bin`
- 1. `chcon system_u:object_r:container_runtime_exec_t:s0 /usr/local/bin/service`
-
-then:
1. copy the `podman.service` and `podman.socket` files into `/etc/systemd/system`
1. `systemctl daemon-reload`
1. `systemctl enable podman.socket`
1. `systemctl start podman.socket`
1. `systemctl status podman.socket podman.service`
-
-Assuming the status messages show no errors, the libpod service is ready to respond to the APIv2 on the unix domain socket `/run/podman/podman.sock`
-### podman.service
-```toml
-[Unit]
-Description=Podman API Service
-Requires=podman.socket
-After=podman.socket
-Documentation=man:podman-api(1)
-StartLimitIntervalSec=0
-
-[Service]
-Type=oneshot
-Environment=REGISTRIES_CONFIG_PATH=/etc/containers/registries.conf
-ExecStart=/usr/local/bin/service
-TimeoutStopSec=30
-KillMode=process
+Assuming the status messages show no errors, the libpod service is ready to respond to the APIv2 on the unix domain socket `/run/podman/podman.sock`
-[Install]
-WantedBy=multi-user.target
-Also=podman.socket
-```
+### podman.service
+You can refer to [this example](https://github.com/containers/libpod/blob/master/contrib/systemd/system/podman.service) for a sample podman.service file.
### podman.socket
+You can refer to [this example](https://github.com/containers/libpod/blob/master/contrib/systemd/system/podman.socket) for a sample podman.socket file.
-```toml
-[Unit]
-Description=Podman API Socket
-Documentation=man:podman-api(1)
-
-[Socket]
-ListenStream=%t/podman/podman.sock
-SocketMode=0660
-
-[Install]
-WantedBy=sockets.target
-```
## user (podman service run as given user aka "rootless")
-The following unit file examples assume:
- 1. you have a created a directory `~/bin`
- 1. copied the `service` executable into `~/bin`
- 1. `chcon system_u:object_r:container_runtime_exec_t:s0 ~/bin/service`
-
-then:
1. `mkdir -p ~/.config/systemd/user`
1. copy the `podman.service` and `podman.socket` files into `~/.config/systemd/user`
1. `systemctl --user enable podman.socket`
1. `systemctl --user start podman.socket`
1. `systemctl --user status podman.socket podman.service`
-
-Assuming the status messages show no errors, the libpod service is ready to respond to the APIv2 on the unix domain socket `/run/user/$(id -u)/podman/podman.sock`
-### podman.service
+Assuming the status messages show no errors, the libpod service is ready to respond to the APIv2 on the unix domain socket `/run/user/$(id -u)/podman/podman.sock`
-```toml
-[Unit]
-Description=Podman API Service
-Requires=podman.socket
-After=podman.socket
-Documentation=man:podman-api(1)
-StartLimitIntervalSec=0
-
-[Service]
-Type=oneshot
-Environment=REGISTRIES_CONFIG_PATH=/etc/containers/registries.conf
-ExecStart=%h/bin/service
-TimeoutStopSec=30
-KillMode=process
+### podman.service
+You can refer to [this example](https://github.com/containers/libpod/blob/master/contrib/systemd/user/podman.service) for a rootless podman.service file.
-[Install]
-WantedBy=multi-user.target
-Also=podman.socket
-```
### podman.socket
-
-```toml
-[Unit]
-Description=Podman API Socket
-Documentation=man:podman-api(1)
-
-[Socket]
-ListenStream=%t/podman/podman.sock
-SocketMode=0660
-
-[Install]
-WantedBy=sockets.target
-```
+You can refer to [this example](https://github.com/containers/libpod/blob/master/contrib/systemd/user/podman.socket) for a rootless podman.socket file.
diff --git a/contrib/systemd/auto-update/podman-auto-update.service b/contrib/systemd/auto-update/podman-auto-update.service
new file mode 100644
index 000000000..b63f24230
--- /dev/null
+++ b/contrib/systemd/auto-update/podman-auto-update.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Podman auto-update service
+Documentation=man:podman-auto-update(1)
+Wants=network.target
+After=network-online.target
+
+[Service]
+ExecStart=/usr/bin/podman auto-update
+
+[Install]
+WantedBy=multi-user.target default.target
diff --git a/contrib/systemd/auto-update/podman-auto-update.timer b/contrib/systemd/auto-update/podman-auto-update.timer
new file mode 100644
index 000000000..3e50ffa9b
--- /dev/null
+++ b/contrib/systemd/auto-update/podman-auto-update.timer
@@ -0,0 +1,9 @@
+[Unit]
+Description=Podman auto-update timer
+
+[Timer]
+OnCalendar=daily
+Persistent=true
+
+[Install]
+WantedBy=timers.target
diff --git a/contrib/systemd/system/podman-docker.conf b/contrib/systemd/system/podman-docker.conf
new file mode 100644
index 000000000..e12f19bce
--- /dev/null
+++ b/contrib/systemd/system/podman-docker.conf
@@ -0,0 +1 @@
+L+ /run/docker.sock - - - - /run/podman/podman.sock
diff --git a/contrib/systemd/system/podman.service b/contrib/systemd/system/podman.service
index 13d858627..eaa2ec437 100644
--- a/contrib/systemd/system/podman.service
+++ b/contrib/systemd/system/podman.service
@@ -8,7 +8,7 @@ StartLimitIntervalSec=0
[Service]
Type=oneshot
Environment=REGISTRIES_CONFIG_PATH=/etc/containers/registries.conf
-ExecStart=/usr/local/bin/service
+ExecStart=/usr/bin/podman system service
TimeoutStopSec=30
KillMode=process
diff --git a/contrib/systemd/user/podman.service b/contrib/systemd/user/podman.service
index 81fa55cf8..eaa2ec437 100644
--- a/contrib/systemd/user/podman.service
+++ b/contrib/systemd/user/podman.service
@@ -8,7 +8,7 @@ StartLimitIntervalSec=0
[Service]
Type=oneshot
Environment=REGISTRIES_CONFIG_PATH=/etc/containers/registries.conf
-ExecStart=%h/bin/service
+ExecStart=/usr/bin/podman system service
TimeoutStopSec=30
KillMode=process