docker compose入门helloworld的详细过程

时间:2021-10-25 00:57:09

前置知识

compose 是 docker 容器进行编排的工具, 是一个整合发布docker应用的利器,可定义和运行多容器的应用,在 compose 中你可以使用 yaml 文件来配置你的应用服务。然后,只需要一个简单的命令,就可以创建并启动你配置的所有服务。

docker-compose是基于docker的,所以我们需要先安装docker才能使用docker-compose。

使用 compose 基本会有如下三步流程:

在 dockfile 中定义你的应用环境,可以是多个docker应用。
在 docker-compose.yml 中定义组成应用程序的服务。
使用dcoker-compose up命令 运行整个应用程序解决方案。

参考网址:

docker安装

  • 卸载旧版本
?
1
2
3
4
5
6
7
8
sudo yum remove docker \
                docker-client \
                docker-client-latest \
                docker-common \
                docker-latest \
                docker-latest-logrotate \
              docker-logrotate \
                docker-engine
  • 安装 docker engine-community
?
1
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
?
1
2
3
sudo yum-config-manager \
  --add-repo \
  http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
?
1
sudo yum install docker-ce docker-ce-cli containerd.io
  • 启动docker
?
1
sudo systemctl start docker
  • 安装插件
?
1
yum install https://download.docker.com/linux/fedora/30/x86_64/stable/packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm
  • 测试docker是否安装成功
?
1
docker --version

到此docker安装完成!!!

docker-compose安装

官网下载地址,可能比较慢,建议使用下面的

  • 下载安装
?
1
curl -l https://get.daocloud.io/docker/compose/releases/download/1.26.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
  • 授权(一定要授权,负责没有权限)
?
1
chmod +x /usr/local/bin/docker-compose
  • 验证docker-compose是否安装成功(查看版本)
?
1
docker-compose version

docker compose入门helloworld的详细过程

到此 docker-compose 安装成功!!!

docker compose 入门案例

通过docker-compose生成mysql和redis容器

1.创建项目目录,并进入

?
1
2
$ mkdir composetest
$ cd composetest

2.创建一个docker-compose.yml文件,放在项目目录下

文件具体内容如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
version: "3.0"
services:
  mysqldb:
    image: mysql:5.7.19
    container_name: mysql
    ports:
      - "3306:3306"
    volumes:
      - /root/mysql/conf:/etc/mysql/conf.d
      - /root/mysql/logs:/logs
      - /root/mysql/data:/var/lib/mysql
    environment:
      mysql_root_password: root
    networks:
      - ems
    depends_on:
      - redis
 
  redis:
    image: redis:4.0.14
    container_name: redis
    ports:
      - "6379:6379"
    networks:
      - ems
    volumes:
      - /root/redis/data:/data
    command: redis-server
    
networks:
  ems:

3.启动

在当前文件夹启动

  • 前台启动

docker-compose up

  • 后台启动

docker-compose up -d

输出日志如下

docker compose入门helloworld的详细过程

查看docker中容器是否可用

查看容器是否生成

docker compose入门helloworld的详细过程

测试redis容器是否可用

docker compose入门helloworld的详细过程

测试mysql容器是否可用

docker compose入门helloworld的详细过程

到此入门案例已经完成!!!

总结

1.docker-compose命令执行不了是权限的问题,我们需要开放权限,执行如下命令

?
1
chmod +x /usr/local/bin/docker-compose

2.学习期间我们可以在虚拟机使用docker-compose构建我们基础的硬件设施,很方便,节约了大量配置环境,安装基础服务的时间

3.docker-compose还待学习

参考网址:

https://mp.weixin.qq.com/s/KXUm2ydAgymaNzHDiMlg0g

权限不足的坑

https://blog.csdn.net/weixin_41598660/article/details/104034179

到此这篇关于docker compose入门helloworld的文章就介绍到这了,更多相关docker compose入门helloworld内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/shaoming314/article/details/120365516