97 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
			
		
		
	
	
			97 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
| % podman-generate-systemd(1)
 | |
| 
 | |
| ## NAME
 | |
| podman\-generate\-systemd - Generate systemd unit file(s) for a container. Not supported for the remote client
 | |
| 
 | |
| ## SYNOPSIS
 | |
| **podman generate systemd** [*options*] *container|pod*
 | |
| 
 | |
| ## DESCRIPTION
 | |
| **podman generate systemd** will create a systemd unit file that can be used to control a container or pod.
 | |
| By default, the command will print the content of the unit files to stdout.
 | |
| 
 | |
| Note that this command is not supported for the remote client.
 | |
| 
 | |
| ## OPTIONS:
 | |
| 
 | |
| **--files**, **-f**
 | |
| 
 | |
| Generate files instead of printing to stdout.  The generated files are named {container,pod}-{ID,name}.service and will be placed in the current working directory.
 | |
| 
 | |
| **--name**, **-n**
 | |
| 
 | |
| Use the name of the container for the start, stop, and description in the unit file
 | |
| 
 | |
| **--timeout**, **-t**=*value*
 | |
| 
 | |
| Override the default stop timeout for the container with the given value.
 | |
| 
 | |
| **--restart-policy**=*policy*
 | |
| Set the systemd restart policy.  The restart-policy must be one of: "no", "on-success", "on-failure", "on-abnormal",
 | |
| "on-watchdog", "on-abort", or "always".  The default policy is *on-failure*.
 | |
| 
 | |
| ## Examples
 | |
| 
 | |
| Create and print a systemd unit file for a container running nginx with an *always* restart policy and 1-second timeout to stdout.
 | |
| ```
 | |
| $ podman create --name nginx nginx:latest
 | |
| $ podman generate systemd --restart-policy=always -t 1 nginx
 | |
| # container-de1e3223b1b888bc02d0962dd6cb5855eb00734061013ffdd3479d225abacdc6.service
 | |
| # autogenerated by Podman 1.5.2
 | |
| # Wed Aug 21 09:46:45 CEST 2019
 | |
| 
 | |
| [Unit]
 | |
| Description=Podman container-de1e3223b1b888bc02d0962dd6cb5855eb00734061013ffdd3479d225abacdc6.service
 | |
| Documentation=man:podman-generate-systemd(1)
 | |
| 
 | |
| [Service]
 | |
| Restart=always
 | |
| ExecStart=/usr/bin/podman start de1e3223b1b888bc02d0962dd6cb5855eb00734061013ffdd3479d225abacdc6
 | |
| ExecStop=/usr/bin/podman stop -t 1 de1e3223b1b888bc02d0962dd6cb5855eb00734061013ffdd3479d225abacdc6
 | |
| KillMode=none
 | |
| Type=forking
 | |
| PIDFile=/run/user/1000/overlay-containers/de1e3223b1b888bc02d0962dd6cb5855eb00734061013ffdd3479d225abacdc6/userdata/conmon.pid
 | |
| 
 | |
| [Install]
 | |
| WantedBy=multi-user.target
 | |
| ```
 | |
| 
 | |
| Create systemd unit files for a pod with two simple alpine containers. Note that these container services cannot be started or stopped individually via `systemctl`; they are managed by the pod service. You can still use `systemctl status` or journalctl to examine them.
 | |
| ```
 | |
| $ podman pod create --name systemd-pod
 | |
| $ podman create --pod systemd-pod alpine top
 | |
| $ podman create --pod systemd-pod alpine top
 | |
| $ podman generate systemd --files --name systemd-pod
 | |
| /home/user/pod-systemd-pod.service
 | |
| /home/user/container-amazing_chandrasekhar.service
 | |
| /home/user/container-jolly_shtern.service
 | |
| $ cat pod-systemd-pod.service
 | |
| # pod-systemd-pod.service
 | |
| # autogenerated by Podman 1.5.2
 | |
| # Wed Aug 21 09:52:37 CEST 2019
 | |
| 
 | |
| [Unit]
 | |
| Description=Podman pod-systemd-pod.service
 | |
| Documentation=man:podman-generate-systemd(1)
 | |
| Requires=container-amazing_chandrasekhar.service container-jolly_shtern.service
 | |
| Before=container-amazing_chandrasekhar.service container-jolly_shtern.service
 | |
| 
 | |
| [Service]
 | |
| Restart=on-failure
 | |
| ExecStart=/usr/bin/podman start 77a818221650-infra
 | |
| ExecStop=/usr/bin/podman stop -t 10 77a818221650-infra
 | |
| KillMode=none
 | |
| Type=forking
 | |
| PIDFile=/run/user/1000/overlay-containers/ccfd5c71a088768774ca7bd05888d55cc287698dde06f475c8b02f696a25adcd/userdata/conmon.pid
 | |
| 
 | |
| [Install]
 | |
| WantedBy=multi-user.target
 | |
| ```
 | |
| 
 | |
| ## SEE ALSO
 | |
| podman(1), podman-container(1), systemctl(1), systemd.unit(5), systemd.service(5)
 | |
| 
 | |
| ## HISTORY
 | |
| August 2019, Updated with pod support by Valentin Rothberg (rothberg at redhat dot com)
 | |
| April 2019, Originally compiled by Brent Baude (bbaude at redhat dot com)
 |