当前位置: 代码网 > 服务器>服务器>Linux > Linux安装Docker-Compose过程

Linux安装Docker-Compose过程

2024年11月16日 Linux 我要评论
linux安装docker-composedocker-compose官网文档docker-compose安装sudo curl -l "https://github.com/docker/compo

linux安装docker-compose

docker-compose官网文档

docker-compose安装

sudo curl -l "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

备注:安装完成之后此时会提示权限不足,需要增加执行权限

增加docker-compose权限

sudo chmod +x /usr/local/bin/docker-compose

linux安装docker-compose编排工具并启动

docker compose是什么

  • docker-compose项目是docker官方的开源项目,负责实现对docker容器集群的快速编排。
  • docker-compose的工程配置文件默认为docker-compose.yml,可通过环境变量compose_file或-f参数自定义配置文件,其定义了多个有依赖关系的服务及每个服务运行的容器。
  • compose允许用户通过一个单独的docker-compose.yml模板文件(yaml 格式)来定义一组相关联的应用容器为一个项目(project)。
  • docker-compose项目由python编写,调用docker服务提供的api来对容器进行管理。因此,只要所操作的平台支持docker api, 就可以在其上利用compose来进行编排管理。

安装

先查看是否有没有docker(并没有发现安装docker)

开始安装docker

1. 先创建demon.json

  • 创建文件夹:mkdir /etc/docker
  • 跳转:cd /etc/docker
  • 修改damon.json的内容:vim /etc/docker/daemon.json
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}

2.安装docker

需要安装两个包

  • docker-ce-selinux-17.03.0.ce-1.el7.centos.noarch.rpm
  • docker-ce-17.03.0.ce-1.el7.centos.x86_64.rpm

两个包放在word里面了

把两个包放入到/home下面

然后进入安装:

  • 输入:yum install docker-ce-selinux-17.03.0.ce-1.el7.centos.noarch.rpm
  • 输入:yum install docker-ce-17.03.0.ce-1.el7.centos.x86_64.rpm
  • 查看docker服务:systemctl status docker
  • 设置开启自启docker服务:systemctl enable docker
  • 启动docker服务:systemctl start docker
  • 查看命令:docker version

3.安装docker-compose编排工具

  • 下载:docker-compose-linux-x86_64
  • 创建:docker-compose.yml
  • 拷贝docker-compose-linux-x86_64到/usr/local/bin/并改名:mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose
  • 添加权限:chmod +x /usr/local/bin/docker-compose
  • 查看版本:docker-compose -v

4.安装mysql,pgsql,oracle,sqlserver

version: '3'
services:
  mysql:
    restart: always
    image: mysql:8.0.26
    container_name: mysqld
    volumes:
      - /home/mysql/logs:/logs
      - /home/mysql/datadir:/var/lib/mysql
      - /home/mysql/conf:/etc/mysql/conf.d
      - /home/mysql/my.cnf:/etc/mysql/my.cnf
      # 数据库还原目录 可将需要还原的sql文件放在这里
      - /home/mysql/source:/docker-entrypoint-initdb.d
    environment:
      - "mysql_root_password=123456"
      - "tz=asia/shanghai"
    command: 
      --default-authentication-plugin=mysql_native_password
      --lower_case_table_names=1
    ports:
      # 使用宿主机的3306端口映射到容器的3306端口
      # 宿主机:容器
      - 13306:3306
    networks:
      energynetwork:
        ipv4_address: 192.168.1.10
  postgresql:
    restart: always
    image: postgres:12
    container_name: pg_base
    privileged: true
    volumes:
      - ./pgsql/datadir:/var/lib/postgresql/data
    environment:
      - pgdata=/var/lib/postgresql/data/pgdata
      - postgres_password=aa12345678
      - postgres_db=inventory
      - tz=asia/shanghai
    ports:
      - 5432:5432
  sqlserver:
    image: mcr.microsoft.com/mssql/server:latest
    container_name: sqlserver
    ports:
      - 1433:1433
    volumes:
      - ./mssql:/var/opt/mssql
      - /etc/localtime:/etc/localtime
    restart: always
    environment:
      #接受最终用户许可协议
      - accept_eula=y
      #sa用户密码
      - sa_password=aa123456@
  oracle:
    restart: always
    image: registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g:latest
    container_name: oracle_base
    privileged: true
    volumes:
      - /etc/localtime:/etc/localtime
      - ./oracle/data:/opt/oracle/oradata
    environment:
      - tz=asia/shanghai
      - oracle_sid=xe
      - oracle_pdb=system
      - oracle_pwd=oracle
    ports:
      - 1521:1521
  
  
networks:
  energynetwork:
    driver: bridge
    ipam:
      config:
        - subnet: "192.168.1.0/24"

5.启动docker-compose

  • 启动:docker-compose up -d
  • 停止:docker-compose down

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com