mirror of
https://github.com/containers/podman.git
synced 2025-10-20 04:34:01 +08:00
Add user systemd service and socket
This enables user to interact with varlink and create/manage rootless containers through it. Using as: `varlink call unix:/run/user/1000/podman/io.podman/io.podman.ListContainers` Signed-off-by: Matej Marusak <mmarusak@redhat.com>
This commit is contained in:
5
Makefile
5
Makefile
@ -20,6 +20,7 @@ SHAREDIR_CONTAINERS ?= ${PREFIX}/share/containers
|
|||||||
ETCDIR ?= /etc
|
ETCDIR ?= /etc
|
||||||
TMPFILESDIR ?= ${PREFIX}/lib/tmpfiles.d
|
TMPFILESDIR ?= ${PREFIX}/lib/tmpfiles.d
|
||||||
SYSTEMDDIR ?= ${PREFIX}/lib/systemd/system
|
SYSTEMDDIR ?= ${PREFIX}/lib/systemd/system
|
||||||
|
USERSYSTEMDDIR ?= ${PREFIX}/lib/systemd/user
|
||||||
BUILDFLAGS ?=
|
BUILDFLAGS ?=
|
||||||
BUILDTAGS ?= \
|
BUILDTAGS ?= \
|
||||||
$(shell hack/apparmor_tag.sh) \
|
$(shell hack/apparmor_tag.sh) \
|
||||||
@ -395,9 +396,11 @@ install.docker: docker-docs
|
|||||||
install ${SELINUXOPT} -m 644 docs/docker*.1 -t $(DESTDIR)$(MANDIR)/man1
|
install ${SELINUXOPT} -m 644 docs/docker*.1 -t $(DESTDIR)$(MANDIR)/man1
|
||||||
|
|
||||||
install.systemd:
|
install.systemd:
|
||||||
install ${SELINUXOPT} -m 755 -d ${DESTDIR}${SYSTEMDDIR} ${DESTDIR}${TMPFILESDIR}
|
install ${SELINUXOPT} -m 755 -d ${DESTDIR}${SYSTEMDDIR} ${DESTDIR}${USERSYSTEMDDIR} ${DESTDIR}${TMPFILESDIR}
|
||||||
install ${SELINUXOPT} -m 644 contrib/varlink/io.podman.socket ${DESTDIR}${SYSTEMDDIR}/io.podman.socket
|
install ${SELINUXOPT} -m 644 contrib/varlink/io.podman.socket ${DESTDIR}${SYSTEMDDIR}/io.podman.socket
|
||||||
|
install ${SELINUXOPT} -m 644 contrib/varlink/io.podman.socket ${DESTDIR}${USERSYSTEMDDIR}/io.podman.socket
|
||||||
install ${SELINUXOPT} -m 644 contrib/varlink/io.podman.service ${DESTDIR}${SYSTEMDDIR}/io.podman.service
|
install ${SELINUXOPT} -m 644 contrib/varlink/io.podman.service ${DESTDIR}${SYSTEMDDIR}/io.podman.service
|
||||||
|
install ${SELINUXOPT} -m 644 contrib/varlink/io.podman.service ${DESTDIR}${USERSYSTEMDDIR}/io.podman.service
|
||||||
install ${SELINUXOPT} -m 644 contrib/varlink/podman.conf ${DESTDIR}${TMPFILESDIR}/podman.conf
|
install ${SELINUXOPT} -m 644 contrib/varlink/podman.conf ${DESTDIR}${TMPFILESDIR}/podman.conf
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
|
@ -389,6 +389,7 @@ popd
|
|||||||
|
|
||||||
%install
|
%install
|
||||||
install -dp %{buildroot}%{_unitdir}
|
install -dp %{buildroot}%{_unitdir}
|
||||||
|
install -dp %{buildroot}%{_usr}/lib/systemd/user
|
||||||
PODMAN_VERSION=%{version} %{__make} PREFIX=%{buildroot}%{_prefix} ETCDIR=%{buildroot}%{_sysconfdir} \
|
PODMAN_VERSION=%{version} %{__make} PREFIX=%{buildroot}%{_prefix} ETCDIR=%{buildroot}%{_sysconfdir} \
|
||||||
install.bin \
|
install.bin \
|
||||||
install.remote \
|
install.remote \
|
||||||
@ -487,6 +488,8 @@ export GOPATH=%{buildroot}/%{gopath}:$(pwd)/vendor:%{gopath}
|
|||||||
%{_datadir}/containers/%{repo}.conf
|
%{_datadir}/containers/%{repo}.conf
|
||||||
%{_unitdir}/io.podman.service
|
%{_unitdir}/io.podman.service
|
||||||
%{_unitdir}/io.podman.socket
|
%{_unitdir}/io.podman.socket
|
||||||
|
%{_usr}/lib/systemd/user/io.podman.service
|
||||||
|
%{_usr}/lib/systemd/user/io.podman.socket
|
||||||
%{_usr}/lib/tmpfiles.d/%{name}.conf
|
%{_usr}/lib/tmpfiles.d/%{name}.conf
|
||||||
|
|
||||||
%if 0%{?with_devel}
|
%if 0%{?with_devel}
|
||||||
|
@ -6,7 +6,8 @@ Documentation=man:podman-varlink(1)
|
|||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=simple
|
Type=simple
|
||||||
ExecStart=/usr/bin/podman varlink unix:/run/podman/io.podman
|
ExecStart=/usr/bin/podman varlink unix:%t/podman/io.podman
|
||||||
|
KillMode=none
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
|
@ -3,7 +3,7 @@ Description=Podman Remote API Socket
|
|||||||
Documentation=man:podman-varlink(1)
|
Documentation=man:podman-varlink(1)
|
||||||
|
|
||||||
[Socket]
|
[Socket]
|
||||||
ListenStream=/run/podman/io.podman
|
ListenStream=%t/podman/io.podman
|
||||||
SocketMode=0600
|
SocketMode=0600
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
|
Reference in New Issue
Block a user