version: 3.9 services: # redis redis: image: redis restart: on-failure networks: - easyblog # mysql mysql: image: mysql:8 restart: always ports: - 3306:3306 # 需要可以远程访问 volumes: - mysqldata:/var/lib/mysql # 自动数据卷,数据库数据 - mysqlconf:/etc/mysql/conf.d # 自动数据卷,数据库配置 - mysqllog:/var/log/mysql # 自动数据卷,数据库日志 networks: - easyblog environment: MYSQL_USER: root MYSQL_ROOT_PASSWORD: root depends_on: - redis # 博客程序 easy-blog: build: context: . dockerfile: src/docker/Dockerfile restart: always volumes: - /root/user/local/java/easyblog:/user/local/java # 将jar包和配置文件映射到容器内 networks: - easyblog depends_on: - mysql # nginx nginx: image: nginx restart: always volumes: - /root/user/local/nginx:/user/local/nginx # 将ssl证书和配置文件映射到容器内 ports: - 80:80 # 80、443映射到主机端口 - 443:443 networks: - easyblog depends_on: - easy-blog