• 13、通过Docker-compose快速搭建Wordpress


    一、compose定义

    以下定义摘自docker官网:https://docs.docker.com/compose/overview/

    Compose is a tool for defining and running multi-container Docker applications. With Compose, you use a YAML file to configure your application’s services. Then, with a single command, you create and start all the services from your configuration. 

    译文:

    Compose是一个用来定义、运行多容器Docker应用的工具。通过compose,你使用YAML文件来定义你的应用服务。然后,通过一个简单的命令,就能创建和启动你配置的所有服务。

    从定义可以看出,Compose是一个工具,用来定义多个容器服务,然后通过一个命令一键启停所有服务,方便一次性管理多个有关联关系的容器。

    如果说docker run、docker exec 是shell命令的话,那么compose就是shell脚本!只不过他可以通过YAML配置文件的形式简写命令。

    二、使用compose的基本步骤

    Using Compose is basically a three-step process:

    1. Define your app’s environment with a Dockerfile so it can be reproduced anywhere.

    2. Define the services that make up your app in docker-compose.yml so they can be run together in an isolated environment.

    3. Run docker-compose up and Compose starts and runs your entire app.

    译文:

    Compose使用基本三步骤:

    • 通过一个dockefile定义你的app环境,这样你就在任何地方都可以使用。
    • 在docker-compose.yml中定义你的服务,这样你就可以在一个独立的环境中运行所有服务。
    • 运行docker-compose up来启动和运行你定义的整个app。

    三、语法参考

    官网学习链接:

      https://docs.docker.com/compose/

    compose file version 3 语法介绍:

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

    compose命令行介绍:

      https://docs.docker.com/compose/reference/

    四、docker-compse案例

    按照上面所说的步骤:

    1、编写服务的Dockerfile

    Nginx、php的Dockerfile已经在前面实践过了,直接拿来使用即可。

    2、定义docker-compose.yml

    version: '3'
    services:
      nginx:
        hostname: nginx
        build:
          context: ./nginx
          dockerfile: Dockerfile
        ports:
          - 81:80
        networks:
          - lnmp
        volumes:
          - ./wwwroot:/usr/local/nginx/html
    
      php:
        hostname: php
        build:
          context: ./php
          dockerfile: Dockerfile
        networks:
          - lnmp
        volumes:
          - ./wwwroot:/usr/local/nginx/html
    
      mysql:
        hostname: mysql
        image: mysql:5.6
        ports:
          - 3306:3306
        networks:
          - lnmp
        volumes:
          - ./mysql/conf:/etc/mysql/conf.d
          - ./mysql/data:/var/lib/mysql
        command: --character-set-server=utf8
        environment:
          MYSQL_ROOT_PASSWORD: 123456
          MYSQL_DATABASE: wordpress
          MYSQL_USER: user
          MYSQL_PASSWORD: user123
    
    networks:
      lnmp: 
    

     

    3、启动docker-compose

    docker-compose -f docker-compose.yml up -d
    

      注意:-d是在后台启动,且要在docker-compose.yml文件目录下启动。

    4、查看结果

     访问url:http://120.92.*.*:81/wordpress

     

     

  • 相关阅读:
    快速排序
    C# String.Format
    理解C++ static
    程序地址空间
    map的实现
    【S4】使用empty()而不是判断size()是否为0
    RHEL6.4 NFS文件共享服务器搭建
    使用UDEV绑定ASM多路径磁盘
    MySQL的启动程序
    [ERROR] Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root!
  • 原文地址:https://www.cnblogs.com/skyflask/p/10140905.html
Copyright © 2020-2023  润新知