Centos7.4 Docker-Compose를 사용한 WordPress 배포

4642 단어
전언
최근에는 Docker 관련 지식을 배우고 독서 Docker 를 통해 이 기술을 실전에 사용하려고 하지만 프로젝트 환경에서 직접 사용하기는 쉽지 않다.무려 3초 만에 아리운 ECS를 사서 자신만의 기반DockerWordPress 블로그인 다니엘 Fu's hut 전송문을 구축하기로 했다.
본 블로그 구축 환경(아리운 ECS의 구매와 기본적인 안전팀 설정 등은 글에서 생략하고 시청자 여러분은 스스로 연구할 수 있습니다):
  • ECS
  • Centos 7.4

  • 배포 도구:
  • Docker
  • Docker Compose(Compose 도구는 단순한 Dockerfile보다 관리가 용이함)
  • WordPressMySql5.7(Docker 컨테이너에서 실행)
  • 이제 설치 방법에 대해 설명합니다.
    Docker:
    공식 문서에 따르면 DockerCommunity Edition (CE)Enterprise Edition (EE) 두 가지 버전으로 나뉘는데 우리는 학습과 개인으로 사용하는데 당연히 Community Edition (CE)를 선택했다. 설치 절차는 다음과 같다.
    //   1 -            Docker  ,       Docker       (             ,       ):
    $ sudo yum remove docker \
      docker-common \
      docker-selinux \
      docker-engine
      
    //   2 -   Docker    :
    $ sudo yum install -y yum-utils \
      device-mapper-persistent-data \
      lvm2
      
    //   3 -       Docker CE   :
    $ sudo yum-config-manager \
        --add-repo \
        https://download.docker.com/linux/centos/docker-ce.repo
    
    //   4 -   Docker CE:
    $ sudo yum install docker-ce
    
    //   5 -   Docker  :
    $ sudo systemctl start docker
    
    //   6 -         :
    //                    :
    $ docker --version 
    //          hello-world           :
    $ docker run hello-world

    Docker Compose:
    편리한 사용을 위해 Docker Compose를 설치하여 Docker 용기를 관리하고 운행해야 한다Docker Compose의 설치 절차는 다음과 같다.
    //   1 -       :
    $ sudo curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-compose-`uname -s`-`uname -m` -o /usr/bin/docker-compose
    
    //   2 -                :
    $ sudo chmod +x /usr/bin/docker-compose
    
    //   3 -         :
    $ docker-compose --version

    WordPress 및 MySql 컨테이너를 배포하려면 다음과 같이 하십시오.
    먼저 작업 디렉토리를 만들고 docker-compose.yml라는 파일을 생성합니다.
    $ cd /usr/
    $ sudo mkdir myblog && cd myblog
    $ sudo vim docker-compose.yml

    다음 내용을 docker-compose.yml 파일에 저장합니다.
    version: '3'
    services:
       db:
         image: mysql:5.7
         volumes:
           - db_data:/var/lib/mysql
         restart: always
         environment:
           MYSQL_ROOT_PASSWORD: your-mysql-root-password
           MYSQL_DATABASE: wordpress
           MYSQL_USER: wordpress
           MYSQL_PASSWORD: wordpress
       wordpress:
         depends_on:
           - db
         image: wordpress:latest
         volumes:
            - wp_site:/var/www/html
         ports:
           - "80:80"
           - "443:443"
         restart: always
         environment:
           WORDPRESS_DB_HOST: db:3306
           WORDPRESS_DB_USER: wordpress
           WORDPRESS_DB_PASSWORD: wordpress
    volumes:
        db_data:
        wp_site:
    
  • Composer에 사용된 yml문서에 대한 문법은 공식 문서를 참고하십시오. 여기서 일일이 설명하지 않겠습니다(저도 막 입문했기 때문에 몇 가지 기본적인 용법만 할 줄 압니다).
  • 는 정부에서 준 데모와 달리 상기yml 파일에서 volumeswp_site의 볼륨을 추가하여 wordpress 용기에 걸었다. 그러면 용기가 정지되거나 삭제된 후에 다시 설치하고 시작할 때 설치된 wordpress용기도 다시 설치하지 않고 계속 사용할 수 있다.

  • 이때 우리는 plugins 명령을 사용하여 용기를 시작합니다.
    $ sudo docker-compose up -d
    시동을 걸면 우리는 통과할 수 있다http://ecs-ip(우리가 연결된 것은 숙주 호스트의 80 포트이기 때문에) 방문docker-compose(접근할 수 없으면 아리운 안전팀에서 당신이 지정한 포트의 공중망 접근 권한이 열려 있는지 확인하십시오. 일반적으로 80 포트는 기본적으로 열려 있습니다).
    서비스를 종료해야 하는 경우 다음 명령을 실행합니다.
    $ sudo docker-compose down
    블로그 시작:
    우리WordPress 블로그는 이미 구축이 완료되었고 백엔드 관리 페이지를 방문하여 사이트를 초기화한다.그리고 좋아하는 주제를 찾아 필요한 플러그인을 설치하면 우리는 자신만의 블로그 사이트에 자신의 첫 번째 블로그를 쓸 수 있다.
    공유: 처음 쓰는 거예요WordPress. 천천히 더듬어야 할 게 많아요.현재 나는 WordPress 플러그인과 Jetpack 플러그인을 설치했는데 선택한 주제는 WP Editor.MD 무료 버전이다.
    좌절:
    처음 설치할 때 Sirius 명령을 사용하여 용기를 시작하면 용기가 정상적으로 작동하고 있음을 알렸지만 사이트를 방문할 수 없었습니다. 이때 sudo docker-compose up -d(xxxx wordpress 1 실제 생산된 용기 이름 기준)를 통해 로그를 보면 데이터베이스에 연결할 수 없다는 오류가 로그에 계속 표시됩니다.몇 시간 동안 조사한 결과 문제점을 찾은 것은 이전에 기계에 sudo docker logs xxx_wordpress_1와 관련된 테스트 예를 썼을 때 숙성 호스트에 몇 개의 전역 변수(예를 들어 ServerName, ServerHost, UserName 등)를 설정하여 Docker 명령을 통해 현재 시스템 환경 변수를 볼 수 있었기 때문이다. 이런 전역 변수는 env 용기를 wordpress 용기에 연결할 수 없게 했다.이 에피소드는 숙박 호스트에 환경 변수를 함부로 설정하지 말고 반드시 설정해야 한다면 이름과 관리도 잘 해야 한다고 알려준다.
    참조 문서:
  • Install Docker
  • Install Docker Compose
  • Deploy Wordpress With Docker Compose

  • 전재 대상:https://www.cnblogs.com/wushangjue/p/7795969.html

    좋은 웹페이지 즐겨찾기