编写一个docker-compose.yaml安装nginx,nacos,mysql
时间: 2024-03-24 14:40:51 浏览: 149
docker-compose 一键部署nacos 集成mysql 5.7
好的,以下是一个示例的 `docker-compose.yaml` 文件,用于安装 Nginx、Nacos 和 MySQL:
```yaml
version: '3'
services:
nginx:
image: nginx:latest
ports:
- "80:80"
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf
nacos:
image: nacos/nacos-server:latest
ports:
- "8848:8848"
environment:
- PREFER_HOST_MODE=hostname
- SPRING_DATASOURCE_PLATFORM=mysql
- MYSQL_SERVICE_HOST=mysql
- MYSQL_SERVICE_PORT=3306
- MYSQL_SERVICE_DB_NAME=nacos
- MYSQL_SERVICE_USER=nacos
- MYSQL_SERVICE_PASSWORD=nacos
depends_on:
- mysql
mysql:
image: mysql:latest
ports:
- "3306:3306"
environment:
- MYSQL_ROOT_PASSWORD=password
- MYSQL_DATABASE=nacos
- MYSQL_USER=nacos
- MYSQL_PASSWORD=nacos
```
该文件定义了三个服务:Nginx、Nacos 和 MySQL。每个服务都有一个名称、一个镜像和一些配置选项。
Nginx 服务使用 `nginx:latest` 镜像,并将容器内的 80 端口映射到主机的 80 端口。此外,该服务使用了一个名为 `nginx.conf` 的配置文件,该文件必须与 `docker-compose.yaml` 文件位于同一目录下。
Nacos 服务使用 `nacos/nacos-server:latest` 镜像,并将容器内的 8848 端口映射到主机的 8848 端口。此外,该服务使用了一些环境变量来配置数据库连接信息,并依赖于 MySQL 服务。
MySQL 服务使用 `mysql:latest` 镜像,并将容器内的 3306 端口映射到主机的 3306 端口。此外,该服务使用了一些环境变量来配置数据库 root 用户的密码、数据库名称、用户名和密码。
你可以在同一目录下运行 `docker-compose up` 命令来启动这些服务。在服务启动后,你可以通过访问 `http://localhost:8848/nacos` 来访问 Nacos 控制台,并使用 MySQL 中的 `nacos` 数据库来保存配置信息。
阅读全文