就練習 docker 的過程,我用很笨的方式做了一個 docker images 以 LAMP 服務為例,底下為這個的說明:
docker hub 的連結 https://registry.hub.docker.com/u/mtchang/lamp/
1. 使用這個 docker images
# 從 docker hub 抓取這個版本的 lamp
$ sudo docker pull mtchang/lamp
# 看看本地端的 images 是否抓好了
$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
mtchang/lamp latest 59480b898c91 7 minutes ago 578.1 MB
...(skip)...
# 以 mtchang/lamp 的 images 啟動一個 container ,動作是本地端的 tcp 8080:對應到 container 中的 tcp 80 port
# 將本地端指定的目錄 對應到 伺服器端目錄 ,並且啟動 /usr/bin/supervisord 讓 container 可以停在系統內
# sudo docker run -d -p 8080:80 -v 本地端目錄:伺服器端目錄 mtchang/lamp /usr/bin/supervisord
# example:
$ sudo docker run -d -p 8080:80 -v /home/mtchang/app:/var/www/html/test mtchang/lamp /usr/bin/supervisord
# 觀看是否常駐
$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0b65d5ceae03 mtchang/lamp:latest "/usr/bin/supervisor About a minute ago Up About a minute 0.0.0.0:8080->80/tcp jolly_brattain
2. LAMP 功能測試:
(1) http://:8080/
LAMP server
https://registry.hub.docker.com/u/mtchang/lamp/
by mtchang.tw@gmail.com
(2) http://:8080/test/
會出現對應到本地端目錄 /home/mtchang/app 目錄的內容
(3)phpmyadmin http://192.168.123.59:8080/phpmyadmin/
mysql root password is "dockermysql"
(4)sqlbuddy http://192.168.123.59:8080/sqlbuddy
3. 結束這個 container 的程式
# 使用 docker attach 進入 container 的 console 使用 ctrl + c 中斷程式。
$ docker attach 0b65d5ceae03
^C2015-03-07 15:33:10,571 WARN received SIGINT indicating exit request
沒有留言:
張貼留言