Deis에서 Wordpress 배포

Deis 회원





오픈 소스로 만들어진 Heroku 워크 플로우를 실현하는 오픈 소스. 컨테이너 배포, Git push로 배포 가능. 베이스는 CoreOS/etcd/fleet로 만들어진다.

로컬에서 Wordpress를 실행



boot2docker 시작


$boot2docker up
$(boot2docker shellinit) 

Wordpress 컨테이너와 MySQL 컨테이너 시작


$ docker run --name wordpress-mysql -e MYSQL_ROOT_PASSWORD=password -d mysql 
fcb2522174ccbc15c8a6ea585d75da5833a21d6a890e019c94e384d87db500a8

$ docker run  --link wordpress-mysql:mysql -p 8080:80 -d wordpress
51a289307895082b1c093e3bef150a27767ed86f81273c8d745080848283b1d7

$ boot2docker ip

http://${boot2docker ip}:8080에 액세스하면 움직이고 있다.



Dockerhub로 푸시


$  docker ps                                                                                                                                           
CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS                  NAMES
51a289307895        wordpress:4         "/entrypoint.sh apac   2 minutes ago       Up 2 minutes        0.0.0.0:8080->80/tcp   sick_pasteur        
fcb2522174cc        mysql:5             "/entrypoint.sh mysq   2 minutes ago       Up 2 minutes        3306/tcp               wordpress-mysql     

$  docker commit 51a289307895  quay.io/ukitazume/wordpress                                                                                             
1a3e13c9e5c84c486eb2f8f3a0ef19ac1c35c52585b9087d20565dca4cd79a17

$  docker push ukitazume/wordpress 
...
1d2897283c7d: Image successfully pushed 

Deis에서 애플리케이션 만들기


  • MySQL을 준비해 둔다 (손잡이)

  • 애플리케이션 만들기
    $ mkdir wordpress 
    $ cd wordpress
    $ deis create
    Creating application... done, created wordpress
    

    WordPress에 DB 연결 정보 설정
    $ deis config:set WORDPRESS_DB_HOST=mysqlurl.com:3306
    $ deis config:set WORDPRESS_DB_USER=admin
    $ deis config:set WORDPRESS_DB_PASSWORD=password
    

    설정된 정보 확인
    $ deis config:list                                                                                                                                     
    === wordpress Config
    WORDPRESS_DB_HOST          mysqlurl.com:3306
    WORDPRESS_DB_PASSWORD      password
    WORDPRESS_DB_USER          admin
    

    Deploy


    $ deis pull ukitazume/wordpress:latest
    Creating build...  .o. 
    Creating build... done, v6
    

    확인!


    $ deis open
    

    브라우저가 열립니다!


    스케일



    감상


  • Wordpress의 이미지가 너무 큽니다
  • WordPress의 assets는 s3 등으로 올려야 한다
  • 좋은 웹페이지 즐겨찾기