docker 安装 nginx 并注册服务实现开机自启(systemctl 操作)
大约 1 分钟
docker 安装 nginx 并注册服务实现开机自启(systemctl 操作)
安装配置 nginx
- 先 pull 一下镜像
docker pull dockerpull.org/nginx:1.16.1 # 使用dockerpull.org的源- 新建一个
docker-compose.ym文件
version: "3"
services:
web:
#定义主机名
container_name: mynginx
#使用的镜像
image: dockerpull.org/nginx:1.16.1
#容器的映射端口
ports:
- 80:80
#定义挂载点
volumes:
- ./html:/usr/share/nginx/html
- ./conf/nginx.conf:/etc/nginx/nginx.conf
- ./conf.d:/etc/nginx/conf.d
- ./logs:/var/log/nginx
#docker 重启后,容器自启动
restart: always- 启动 docker
docker compose up -d注册为服务,实现容器开机自启动
- 创建 systemd 服务文件
在/etc/systemd/system/目录下创建一个新的服务文件
sudo nano /etc/systemd/system/docker-compose-app.service- 添加以下内容到该文件
[Unit]
Description=Docker Compose Application Service
Requires=docker.service
After=docker.service
[Service]
WorkingDirectory=/path/to/your/docker-compose/project
ExecStart=docker compose up -d
ExecStop=docker compose down
[Install]
WantedBy=multi-user.target- 启用并启动该服务
sudo systemctl enable docker-compose-app.service
sudo systemctl start docker-compose-app.service将启动 java 后台注册为服务
[Unit]
Description=Spring Boot Application
After=syslog.target
[Service]
User=lzc
WorkingDirectory=/home/lzc/java/jars
ExecStart=/home/lzc/java/openlogic-openjdk-jre-17.0.13+11-linux-x64/bin/java -jar /home/lzc/java/jars/dpInspect-0.0.1-SNAPSHOT.jar
SuccessExitStatus=143
TimeoutStopSec=10
Restart=no
RestartSec=5
[Install]
WantedBy=multi-user.target