docke实战篇(四)–安装并学习docker大杀器docker compose

前言:

docker实战篇(三)–dockerfile 文件学习还在整理,因为学这个要先写理论篇。所以先跳过三,直接进入docker实战第四篇docker的大杀器,让大家快速学习并直接上前线战斗。

docker compose这个大杀器是Docker官方编排的项目之一,负责快速的部署分布式应用。看到红色的字,应该就知道,这个大杀器有多牛了吧,快速部署分布式应用。也是开发者必须学会的搭建方法,如果你前面学那些命令很痛苦,学到这里,你就开始解放自己了,因为是真的简单。springboot的配置文件yml学过的话,这个就更加简单了。当然,下面会有我整理好的yml文件,复制粘贴,改改东西,就可以做到一次写好,到处运行了。

开始学习:

首先当然是安装docker compose了,如果还没装docker环境的,请移步到docke实战篇(一)–ubuntu下安装docker并配置镜像加速安装好后再来学这篇。

以下操作使用root权限,想偷懒~!

一:开始安装:将如下命令复制并执行。如果提示权限不足,请切换到root权限

curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

二:进到/usr/local/bin/目录下

cd /usr/local/bin

三:这里你可以ls看一下是否有compose文件,只有正确操作都有的,有的话执行如下命令,给compose文件夹执行权限(默认下载下来是没有权限的,坑爹~~~~)

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

四:我们没事干看看版本吧。

docker-compose version

会看到如下信息,这玩意python写的,所以会有对应的版本信息。

docke实战篇(四)–安装并学习docker大杀器docker compose插图

五:我们找个地方厂家个文件夹,来试试docker compose吧,下面步骤是连着的,直接按顺序复制即可

cd /usr/local/

mkdir -p docker/tomcat

cd docker/tomcat

上面就是为了进入一个自己创建的文件夹,你可以随意

六:现在的位置是/usr/local/docker/tomcatd 创建一个docker-compose.yml文件(文件名就用这个就好,尽量不要自定义)

touch docker-compose.yml

七:修改该配件

vi docker-compose.yml

八:将以下代码复制进去

version: '3'
services:
tomcat:
restart: always
image: tomcat
container_name: tomcat
ports:
– 8080:8080

上面的version ‘3’ 不能乱改,具体是什么版本需要看官方。

service是服务。restart是重启,设置成总是就可以。

image是镜像。container_name是名字。

ports端口。

九:启动容器,执行以下命令即可

docker-compose up

十:开启浏览器,ip:8080就可以访问啦

docke实战篇(四)–安装并学习docker大杀器docker compose插图1

十一:开启的是前台运行的,会占掉一个终端,我们可以使用守护态运行。加个-d就可以了

docker-compose up -d

十二:守护态运行如何看,执行以下命令

docker ps

显示如下:

docke实战篇(四)–安装并学习docker大杀器docker compose插图2

十三:关闭容器,同时会删除容器。

docker-compose down

附件:

docker-compose.yml安装tomcat于mysql的配置

version: '3' services: tomcat: restart: always image: tomcat container_name: tomcat ports: - 8080:8080 volumes: - /usr/local/docker/test/test:/usr/local/tomcat/webapps/ROOT mysql: restart: always image: mysql:5.7.22 container_name: mysql ports: - 3306:3306 environment: TZ: Asia/Shanghai MYSQL_ROOT_PASSWORD: 123456 command: --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci --explicit_defaults_for_timestamp=true --lower_case_table_names=1 --max_allowed_packet=128M --sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO" volumes: - mysql-data:/var/lib/mysql volumes: mysql-data

上面需要修改的地方,主要是tomcat节点下的

volumes:自己项目存放目录:将项目部署到该目录下

端口号可以自己改,mysql那里只要改密码就可以了。如果看不懂上面哪个是密码,那就一个一个百度吧。这英语。。。。。。

总结:

这个大杀器真的很便利,比我写dockerfile时的绝望好太多了,瞬间被它吸粉了。用这个也很适合做分布式部署。

程序人生,与君共勉~!

原文链接:https://blog.csdn.net/weixin_41622183/article/details/86595139

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享