个人知识库 个人知识库
首页
关于
  • C语言
  • CPlusPlus
  • Linux
  • PHP
  • Nginx
  • MySQL
  • Redis
  • Docker
  • Kubernetes
  • SRS
阅读
常用工具
  • 分类
  • 标签
  • 归档
GitHub

Agnes001

坚持是一件很伟大的事业
首页
关于
  • C语言
  • CPlusPlus
  • Linux
  • PHP
  • Nginx
  • MySQL
  • Redis
  • Docker
  • Kubernetes
  • SRS
阅读
常用工具
  • 分类
  • 标签
  • 归档
GitHub
  • Nginx

  • Qt

  • centos

  • MySQL

  • Redis

  • Docker

    • docker安装
    • docker常用命令
    • Dockerfile
    • docker-compose
      • 准备知识
      • 在线安装DockerCompose(推荐)
      • 离线安装DockerCompose
  • Kubernets

  • SRS

  • 应用框架
  • Docker
Agnes001
2022-06-23

docker-compose

# 准备知识

YAML 的配置文件后缀为 .yml,如:runoob.yml 。 基本语法

  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进不允许使用tab,只允许空格
  • 缩进的空格数不重要,只要相同层级的元素左对齐即可
  • '#'表示注释
  • YAML 数组,以 - 开头的行表示构成一个数组

# 在线安装DockerCompose(推荐)

curl -L https://get.daocloud.io/docker/compose/releases/download/1.27.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose -v
# 或者采用下面的方式
curl -L https://raw.githubusercontent.com/docker/compose/1.24.1/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose

# 离线安装DockerCompose

下载地址:https://github.com/docker/compose/releases(opens new window)

mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose -v

docker-compose.yml示例:

####################################
## 修改配置文件后,重启容器 docker-compose up -d --force-recreate
## 项目依赖启动 docker-compose up mariadb redis
## 列出所有容器 docker-compose ps
## 删除Tag为空的镜像 docker images|grep none|awk '{print $3}'|xargs docker rmi -f
## 关闭所有容器 docker-compose down
## 启动单个容器(处于同一网络中) docker run -it --name=resolve --net=tslc-mysql tslc-resolve:latest bash 
####################################
version: '3'
services:
  tslc-resolve:
    image: tslc-resolve:latest
    container_name: tslc-resolve
    build:
      context: .
      dockerfile: Dockerfile  
    restart: always
    privileged: true
    environment:
      TZ: "Asia/Shanghai"
    ports:
      - '8082:8082'
    volumes:
      - /etc/localtime:/etc/localtime
      - ./conf/resolve/:/data/drogon/TSLC_BACKEND_RESOLVE/conf
      - ./data/resolve/logs:/data/drogon/TSLC_BACKEND_RESOLVE/logs
      - ./data/resolve/static:/data/drogon/TSLC_BACKEND_RESOLVE/static
    depends_on:
      - tslc-mysql
    networks:
      - net-tslc

  tslc-mysql:
    image: mysql:8.0
    container_name: tslc-mysql
    restart: always
    privileged: true
    environment:
      MYSQL_ROOT_HOST: "%"
      MYSQL_ROOT_PASSWORD: ITrain-BJ6
      TZ: "Asia/Shanghai"
    command:
      - --innodb_buffer_pool_size=256M
      - --max_connections=81
      - --character-set-server=utf8mb4
      - --collation-server=utf8mb4_general_ci
      - --default-authentication-plugin=mysql_native_password
      - --explicit_defaults_for_timestamp=true
      - --lower_case_table_names=1
    ports:
      - '3306:3306'
    volumes:
      - /etc/localtime:/etc/localtime
      - ./conf/initdb/:/docker-entrypoint-initdb.d/
      - ./data/mysql/:/var/lib/mysql/
    networks:
      - net-tslc

networks:
  net-tslc:
编辑此页
Dockerfile
常用命令

← Dockerfile 常用命令 →

Theme by Vdoing
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式