一、 什麼是docker?
docker是乙個開源的引擎,可以輕鬆的為任何應用建立乙個輕量級的、可移植的、自給自足的容器。
開發者在筆記本上編譯測試通過的容器可以批量地在生產環境、測試環境、預發布環境 中部署。
二、 為什麼要用docker?
docker 讓開發者可以打包他們的應用以及依賴包到乙個可移植的容器中,然後發布到任何流行的 linux 機器上,便可以實現虛擬化。docker改變了虛擬化的方式,使開發者可以直接將自己的成果放入docker中進行管理。方便快捷已經是 docker的最大優勢,過去需要用數天乃至數週的 任務,在docker容器的處理下,只需要數秒就能完成。
一方面,雲計算時代到來,使開發者不必為了追求效果而配置高額的硬體,docker 改變了高效能必然**格的思維定勢。docker 與雲的結合,讓雲空間得到更充分的利用。不僅解決了硬體管理的問題,也改變了虛擬化的方式。
三、 docker初體驗(php開發環境)
docker安裝教程忽略,有興趣請檢視以下鏈結
(一)、 建立容器mac :
centos :
docker run -itd -p 80:80 --name nginx \
-v /users/***/docker/www/:/usr/share/nginx/ \
-v /users/***/docker/nginx/conf/:/etc/nginx/conf.d/ \
--privileged=true -d nginx
docker run -p 9000:9000 --name php5-6 \
-v /users/***/docker/www/:/usr/share/nginx/ \
-v /users/***/docker/php/conf/:/usr/local/etc/php/ \
-d php:5.6-fpm
docker exec -it php容器 /bin/bash #進入php容器
docker-php-ext-install pdo_mysql # 安裝pdo
docker run -p 3306:3306 --name mysql5.6 \
-v /users/***/docker/mysql/conf:/etc/mysql/conf.d \
-v /users/***/docker/mysql/logs:/logs \
-v /users/***/docker/mysql/data:/var/lib/mysql \
-e mysql_root_password=123456 \
-d mysql:5.6
# 連線mysql
mysql -h mysql容器ip -u root -p ***
# 進入到redis容器,執行命令列
docker exec -it 容器名稱 redis-cli -h 172.17.0.5 -p 6379 -a your_password
(二)、容器常用操作
docker ps -a #檢視所有容器
docker ps #檢視開啟的容器
docker start nginx
docker start 容器名稱
docker exec -it 容器名稱 /bin/bash #進入docker
exit #退出
docker inspect 容器名稱或 id #檢視容器ip
ps:
1、每次重啟docker軟體,啟動容器後,各容器的ip都會變化,因此需要特別留意;
2、需要檢查nginx站點配置裡的fastcgi_pass ip 為php容器的ip;**中鏈結資料庫host為mysql容器的ip;
(三)、nginx配置
(四)、其他server
location ~ .*\.(php|php5)?$
error_page 404 = /404.php;
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
location ~ .*\.(js|css)?$
location ^~ /daemon
}
apt-get update # 同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引。這樣才幹獲取到最新的軟體包。
apt-get install vim #安裝vim
ps:docker commit -m "" -a "" 容器id(可以簡寫) 映象名稱
#-m 提示資訊 -a 作者
docker commit -m "nginx" -a "***" d7537e914c48 nginx0731a
Docker技術初體驗
什麼是docker docker技術和虛擬機器技術類似,他們都能在乙個host系統中劃分出多個相互獨立隔離的執行環境。借助官方配圖 虛擬機器的示意圖是這樣的 我們需要為每個虛擬機器安裝自己的作業系統,即使我們只是想在裡面執行乙個應用。然後需要去對每個作業系統進行管理。再看看docker的示意圖 do...
Docker的初體驗
這幾天搗鼓了一下docker,是真的麻煩啊,網上資料比較雜亂,也很多英文,學起來挺多問題的 在控制面板 程式 啟用或關閉windows功能,在彈出框中勾選hyper v,會需要重啟啟用,這貌似是乙個虛擬機器功能 docker toolbox,這是乙個帶虛擬機器,docker之類的整合工具包 win1...
docker安裝mongo初體驗
8 到此啟動好了mongo,但是我怎麼進入mongo呢?故此,需要進入容器,命令如下 docker exec it 容器id bin bash 進入容器 9 進入之後,可以通過如下命令依次建立使用者和庫 mongo use admin db.createuser 建立使用者,此使用者建立成功,則後續...