要在通过docker-compose部署的NGINX服务实现开机自启,你需要确保Docker守护进程在系统启动时自动运行,并配置docker-compose.yml文件以在容器中运行NGINX服务。以下是步骤:
-
确保Docker守护进程开机启动:
- 在Ubuntu/Debian上,可以通过以下命令设置:
sudo systemctl enable docker
- 在CentOS/RHEL上:
sudo systemctl enable docker.service
- 在Ubuntu/Debian上,可以通过以下命令设置:
-
创建docker-compose.yml文件: 创建一个名为docker-compose.yml的文件,内容如下(这是一个基本示例):
version: '3' services: nginx: image: nginx restart: always ports: - "80:80" volumes: - ./nginx.conf:/etc/nginx/nginx.conf - ./html:/usr/share/nginx/html
这个配置会拉取官方Nginx镜像,将80端口映射到主机的80端口,并挂载本地的nginx.conf配置文件和静态网页文件。
-
启动并检查服务: 运行以下命令来启动服务,并使其保持后台运行:
docker-compose up -d
-d
参数表示在后台运行(detached mode)。由于在docker-compose.yml中设置了restart: always
,因此即使容器崩溃或系统重启,Docker也会自动重新启动该容器。
现在,你的Nginx服务已经通过docker-compose部署,并且会在系统启动时自动启动。