Docker Compose 实现 Nginx 与 MySQL 多容器服务编排

(一)编写 docker-compose.yml

vim docker-compose.yml

复制代码
version: '3'

services:     
  nginx:

    image: nginx:latest       

    container_name: my-nginx

    ports:

       - "8080:80"     

    volumes:

       - ./html:/usr/share/nginx/html    

    depends_on:   

       - mysql



  mysql:

    image: uhub.service.ucloud.cn/library/mysql:5.5.46

    container_name: my-mysql

    ports:

       - "3306:3306"

    environment:

       MYSQL_ROOT_PASSWORD: 123456

    volumes:

       - mysql-data:/var/lib/mysql 



volumes:

  mysql-data:

(二)运行多容器

root@Client compose-demo# docker compose up -d

WARN0000 /root/compose-demo/docker-compose.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion

+ up 2/2

✔ Container my-nginx Started 0.5s

✔ Container my-mysql Started

(三)测试Nginx

(四)测试mysql

(五)查看 Docker 自动创建的网络

(六)验证容器间通信

(1)进入容器内,安装ping。

apt update

apt install -y iputils-ping

(2)ping mysql

root@2fe955aa5b11:/# ping mysql

PING mysql (172.18.0.2) 56(84) bytes of data.

64 bytes from my-mysql.compose-demo_default (172.18.0.2): icmp_seq=1 ttl=64 time=0.079 ms

64 bytes from my-mysql.compose-demo_default (172.18.0.2): icmp_seq=2 ttl=64 time=0.072 ms

(七)停止服务

root@Client compose-demo# docker compose up -d

相关推荐
热爱Liunx的丘丘人11 小时前
Docker
运维·docker·容器
admin and root11 小时前
Blade站点的渗透测试到MySQL数据库权限接管
数据库·mysql·web安全·渗透测试·移动安全·培训·src赏金
sszdzq11 小时前
docker 安装 rocketmq + dashboard
docker·容器·rocketmq
这个DBA有点耶11 小时前
SQL中的窗口函数进阶:滑动窗口与帧子句详解
数据库·sql·程序人生·mysql·oracle·学习方法·改行学it
tang74516396211 小时前
Ubuntu 24.04 安装 Nginx 1.29.6 完整版教程20260320
linux·nginx·ubuntu
tongyiixiaohuang11 小时前
跨平台数据库集成:SQLServer到MySQL的最佳实践
数据库·mysql·sqlserver
小糖学代码12 小时前
LLM系列:环境搭建:4.Nginx使用教程
运维·python·神经网络·nginx
sg_knight12 小时前
负载均衡配置:使用 Nginx 反向代理 MinIO 集群的实战教程
运维·nginx·负载均衡·文件管理·minio·cos·oss
ai产品老杨12 小时前
深度解析:基于 Docker 与异构计算的下一代 AI 视频管理平台架构(附 GB28181/RTSP 统一接入与源码交付方案)
人工智能·docker·音视频