返回介绍

docker-compose

发布于 2024-08-12 12:46:24 字数 7483 浏览 0 评论 0 收藏 0

本地使用 Docker-compose

安装 docker-compose, 参考官方文档

如何在 Linux、Mac、Windows 安装 docker-compose, 点击展开查看#### 在Linux安装 ```shell # 1.1 运行此命令以下载Docker Compose的当前稳定版本 sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose # 1.2 将可执行权限应用于二进制文件 sudo chmod +x /usr/local/bin/docker-compose ``` #### 使用 Python 的 pip 安装 ```shell pip3 install docker-compose -i https://pypi.tuna.tsinghua.edu.cn/simple ``` #### 使用 Docker Desktop - Windows: https://hub.docker.com/editions/community/docker-ce-desktop-windows - Mac: https://hub.docker.com/editions/community/docker-ce-desktop-mac/

使用 Git 克隆并进入本项目

git clone https://github.com/flipped-aurora/gin-vue-admin.git && cd gin-vue-admin

使用 docker-compose up 一键启动项目

# 使用docker-compose启动四个容器
docker-compose -f deploy/docker-compose/docker-compose.yaml up
# 如果您修改了某些配置选项,可以使用此命令重新打包镜像
docker-compose -f deploy/docker-compose/docker-compose.yaml up --build
# 使用docker-compose 后台启动
docker-compose -f deploy/docker-compose/docker-compose.yaml up -d
# 使用docker-compose 重新打包镜像并后台启动
docker-compose -f deploy/docker-compose/docker-compose.yaml up --build -d
# 服务都启动成功后,使用此命令行可清除none镜像
docker system prune

注意事项

使用 docker-compose 体验时需注意的问题

  1. 在初始化数据页面中
  2. ip 请填写 docker-compose.yaml 的第 56 行的 ip,或直接使用 mysql,如下图

  3. 数据库为 qmPlus

  4. 端口为 3306

  5. 用户名为 gva

  6. 密码为 docker-compose.yaml 的 52行定义的数据库密码

docker-playground

  1. 如果 server 的 177.7.0.12 这个容器内部ip被占用了, 需要修改地方为
  2. docker-compose.yaml 的第 42 行的 177.7.0.12 更换为你想要的 ip
  3. web/.docker-compose/nginx/conf.d/my.conf 的第 20 行的 177.7.0.12 更换为你想要的 ip

使用 docker-compose 部署时需注意的问题

  1. docker-compose 使用自定义的一个 docker 网络

    •   networks:
          network:
            ipam:
              driver: default
              config:
                - subnet: '177.7.0.0/16'
      
    • 子网地址, 默认网关是 177.7.0.1 (docker-compose V2 需要写, V3 则不需要), 具体信息看官方文档

    • 默认的 network 名为 gin-vue-admin_network, 默认是 bridge 模式

    • 如果修改了子网,对应的每个 service 的 ipv4_address 都需要修改, 还有web/.docker-compose/nginx/conf.d/my.conf 的第 20 行的 server 的 ip 也需要修改

  2. server/Dockerfile 使用了多阶段构建,这是 docker 17.05 后引入的,因此安装的docker版本需要高于 17.05

  3. mysql 数据库请使用装在服务器磁盘的本地数据库
    • 避免使用 docker 容器内的 mysql, 可能会出现写入的问题, io 比宿主机低 docker 的持久化机制问题.
  4. 使用本项目的 docker-compose 进行部署时, 请修改docker-compose.yaml 对应的 nginx配置, mysql 配置, networks 配置,redis配置,按需自行更改.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文