首页 > 其他分享 >Docker进阶--Docker Compose

Docker进阶--Docker Compose

时间:2022-12-18 18:13:14浏览次数:42  
标签:容器 compose -- Compose wordpress volumes Docker docker

Docker 进阶

Docker Compose

一、定义:compose是Docker官方开源项目,轻松管理容器、定义运行多个容器应用,批量容器编排。

二、使用过程

  1. 定义、运行多个容器

  2. YAML 配置文件

  3. singel command 命令

三、具体步骤

  1. 存在Docker file,并保证项目可用在任何地方运行

  2. 编写service服务,编写docker-compose.yaml文件

 

version: "3.9"  # optional since v1.27.0
services:
  web:
    build: .
    ports:
      - "8000:5000"
    volumes:
      - .:/code
      - logvolume01:/var/log
    links:
      - redis
  redis:
    image: redis
volumes:
  logvolume01: {}

 

 

  1. 启动docker-compose up,启动项目

核心概念:

  1. 服务service:容器、应用(web\redis、mysql)

  2. 项目project:一组关联的容器,网站、博客等。

四、安装

  1、下载包,官方地址(比较慢):https://docs.docker.com/compose/install/

  找个国内镜像下载即可!

  2、授权

 

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

 

  1. 样例 https://docs.docker.com/compose/gettingstarted/

 

五、使用docker-compose

  1. 编写docker-compose文件详解:

    https://docs.docker.com/compose/compose-file/compose-file-v3/

  2、博客一键启动,案例实现过程:

  1. 创建项目目录

  2. 创建docker-compose.yml文件

 

version: "3.9"
    
services:
  db:
    image: mysql:5.7
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: somewordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
    
  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    volumes:
      - wordpress_data:/var/www/html
    ports:
      - "8000:80"
    restart: always
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress
volumes:
  db_data: {}
  wordpress_data: {}

  

 

  1. 构建项目

    docker-compose up -d 从项目目录下运行

  1. 查看博客,并配置博客基本信息

  2. 关闭清理项目

    该命令 会删除容器和默认网络,但会保留您的 WordPress 数据库。

 

    docker-compose down

 

    该命令删除容器、默认网络和 WordPress 数据库。

 

docker-compose down --volumes

 

官方博客详细案例说明 :https://docs.docker.com/samples/wordpress/

正常项目实现过程:

1)项目jar包 2)编写dockerfile 3)编写docker-compose.yml文件

标签:容器,compose,--,Compose,wordpress,volumes,Docker,docker
From: https://www.cnblogs.com/xjx767361314/p/16990711.html

相关文章

  • django 聚合查询 分组查询 f查询 q查询
    目录今日内容详细图书管理系统讲解聚合查询分组查询F与Q查询今日内容详细图书管理系统讲解1.表设计 先考虑普通字段再考虑外键字段 数据库迁移、测试数据录入2.首页......
  • Nginx入门--学习总结
    Nginx入门核心功能:反向代理、负载均衡、动静分离nginx的安装、启动nginx常用命令,进入/usr/local/nginx/sbin./nginx--启动./nginx-sstop--停止nginx./ng......
  • 架构设计(六):引入消息队列
    架构设计(六):引入消息队列作者:Grey原文地址:博客园:架构设计(六):引入消息队列CSDN:架构设计(六):引入消息队列消息队列是一个支持持久化的组件,数据存储在内存中,支持异步通信。它......
  • K8S--环境运维记录一
    K8S使用K8S使用过程中的命令与错误整理常用命令利用configmap创建配置信息文件kubectlcreateconfigmap-neurekaeureka-config--from-file=application.......
  • 网络
    网络异常Windows控制面板\所有控制面板项\网络连接:自动获得IP地址首选DNS服务器:223.5.5.5删除hosts文件:C:\Windows\System32\drivers\etc\hostswin+r、cmd:......
  • Web部署
    Web部署实验简介openEuler中基于LAMP部署WordPress实验器材本文环境基于华为云的弹性云服务器ECS:CPU架构:选择鲲鹏通用计算增强型操作系统选择openEuler20.0364......
  • 1703. 得到连续 K 个 1 的最少相邻交换次数
    1703.得到连续K个1的最少相邻交换次数classSolution{publicintminMoves(int[]nums,intk){List<Integer>g=newArrayList<Integer>();......
  • 【AI with ML】第 5 章 :自然语言处理简介
    OverridetheentrypointofanimageIntroducedinGitLabandGitLabRunner9.4.Readmoreaboutthe extendedconfigurationoptions.Beforeexplainingtheav......
  • BUU_RE学习记录
    一、easyre1.010打开,直接搜flag,得到flag二、reverse11.先查壳,得知是64位无壳,直接用IDA打开2.shiftF12查找字符串,发现关键语句3.查看相应代码,F5反编译4.发现关键......
  • 【ASP.NET Core】MVC操作方法如何绑定Stream类型的参数
    咱们都知道,MVC在输入/输出中都需要模型绑定。因为HTTP请求发送的都是文本,为了使其能变成各种.NET类型,于是在填充参数值之前需ModelBinder的参与,以将文本转换为.NET类......