Docker(六)、Docker-compose简单了解-CSDN博客
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
Docker-compose简单了解
一、简单了解–>概述
Docker-compose 容器编排比如一个java应用涉及到mysqltomcat redis nginx等。docker可以通过脚本实现先后安装 各个容器每个容器需要的依赖文件都做了关系绑定只需要使用docker的容器编排工具
一、官方提供的容器编排工具Docker-compose特点
- 1 、docker compose 单机多容器部署工具
docker compose 只能在一台宿主机做多容器部署如果需要多台宿主机做集群需要使用docker swarm k8s 实现集群部署 - 2、底层通过yml文件定义多容器如何部署
- 3、win/mac默认提供docker compose linux则需要安装
二、Docker-compose安装
指定docker-compose安装路径/usr/local/bin/
curl -SL https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
验证
docker-compose --version
至此安装完毕。
三、浅实践下
通过docker-compose部署WordPress项目
WordPress :是一种使用PHP语言开发的博客平台用户可以在支持PHP和MySQ数据库的服务器上架设WordPress。你可以使用WordPress搭建一个简单的独立博客也可以把WordPress当作一个内容管理系统CMS用来搭建一个小门户网站总之现在的WordPress已经强大到几乎可以搭建目前所有常见类型的网站比如门户、下载站、淘宝客、论坛、多博客等等。
step1: cd /usr ,创建wordpress ,并进入此目录
参看[wordpress部署的项目指导](https://github.com/docker/awesome-compose/blob/master/official-documentation-samples/wordpress/README.md)
- step1 创建文件
vim /usr/wordpress/docker-compose.yml
编辑内容并保存
services:
db:
# We use a mariadb image which supports both amd64 & arm64 architecture
image: mariadb:10.6.4-focal
# If you really want to use MySQL, uncomment the following line
#image: mysql:8.0.27
command: '--default-authentication-plugin=mysql_native_password'
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
- MYSQL_ROOT_PASSWORD=somewordpress
- MYSQL_DATABASE=wordpress
- MYSQL_USER=wordpress
- MYSQL_PASSWORD=wordpress
expose:
- 3306
- 33060
wordpress:
image: wordpress:latest
volumes:
- wp_data:/var/www/html
ports:
- 80:80
restart: always
environment:
- WORDPRESS_DB_HOST=db
- WORDPRESS_DB_USER=wordpress
- WORDPRESS_DB_PASSWORD=wordpress
- WORDPRESS_DB_NAME=wordpress
volumes:
db_data:
wp_data:
- step2:解析并执行脚本
docker compose up -d
up
表示直接对docker-compose.yml
解析自动部署并运行
执行docker ps
输出
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
57f320fd788f wordpress:latest "docker-entrypoint.s…" 2 minutes ago Up 2 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp wordpress-wordpress-1
8284fe1dd383 mariadb:10.6.4-focal "docker-entrypoint.s…" 2 minutes ago Up 2 minutes 3306/tcp, 33060/tcp wordpress-db-1
以上输出可查看到有自动做好的端口映射有2个容器一个是db容器一个是wordpress容器浏览器访问宿主机ip选择语言 注册后即可登录
小结以上通过docker-compose快速部署了一个wordpress应用 通过一个yml 文件部署了多个容器并且做了容器之间有效配置及完成了容器之间的互通互连wordpress就是通过docker compose作为容器编排迅速完成自动化部署的代表样例
四.以上步骤遇到问题及解决
1、报错curl: (92) HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)
解决git config --global http.version HTTP/1.1
2、报错-bash: git: command not found
解决
yum -y install git
git —version
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |