Yo soy partidario de que uses docker-compose.
Permite definir de forma muy cómoda los dockers.
Ejemplo para Pi Hole sacado del propio Docker Hub
version: "3"
# More info at https://github.com/pi-hole/docker-pi-hole/ and https://docs.pi-hole.net/
services:
pihole:
container_name: pihole
image: pihole/pihole:latest
ports:
- "53:53/tcp"
- "53:53/udp"
- "67:67/udp"
- "80:80/tcp"
- "443:443/tcp"
environment:
TZ: 'America/Chicago'
# WEBPASSWORD: 'set a secure password here or it will be random'
# Volumes store your data between container upgrades
volumes:
- './etc-pihole/:/etc/pihole/'
- './etc-dnsmasq.d/:/etc/dnsmasq.d/'
dns:
- 127.0.0.1
- 1.1.1.1
# Recommended but not required (DHCP needs NET_ADMIN)
# https://github.com/pi-hole/docker-pi-hole#note-on-capabilities
cap_add:
- NET_ADMIN
restart: unless-stopped
Después le haces un docker-compse up -d en la carpeta dónde esté el docker-compose.yml y fuera.
Puedes definir varios contenedores (instalas imágenes, pero cada configuración de una imagen es un contenedor) en un mismo docker-compose, muy útil para tener toda la configuración de tu servidor en un solo fichero.
Como vez en el ejemplo, para el tema de inicie siempre, basta con configurar el parámetro «restar», que puede ser always o unless-stopped entre otros.
En este caso, se iniciaría siempre (tras reiniciar el servidor, si el servicio se bloquea...) salvo que tú la pares manualmente.