ubuntu下docker的安裝
$ docker version
# 或者
$ docker info
doceker run
#-a stdin: 指定標準輸入輸出內容型別,可選 stdin/stdout/stderr 三項;
#-d: 後台執行容器,並返回容器id;
#-i: 以互動模式執行容器,通常與 -t 同時使用;
#-p: 隨機埠對映,容器內部埠隨機對映到主機的埠
#-p: 指定埠對映,格式為:主機(宿主)埠:容器埠
#-t: 為容器重新分配乙個偽輸入終端,通常與 -i 同時使用;
#--name="nginx-lb": 為容器指定乙個名稱;
#--dns 8.8.8.8: 指定容器使用的dns伺服器,預設和宿主一致;
#--dns-search example.com: 指定容器dns搜尋網域名稱,預設和宿主一致;
#-h "mars": 指定容器的hostname;
#-e username="ritchie": 設定環境變數;
#--env-file=: 從指定檔案讀入環境變數;
#--cpuset="0-2" or --cpuset="0,1,2": 繫結容器到指定cpu執行;
#-m :設定容器使用記憶體最大值;
#--net="bridge": 指定容器的網路連線型別,支援 bridge/host/none/container: 四種型別;
#--link=: 新增鏈結到另乙個容器;
#--expose=: 開放乙個埠或一組埠;
#--volume , -v: 繫結乙個卷
docker run-it image /bin/bash #啟動乙個新容器,直接以映象名稱來啟動乙個預設名稱的容器
docker run --name mynginx -d nginx:latest#指定名稱容器名稱和映象的倉庫及分支來啟動乙個容器
docker images(docker image ls --all)
#檢視所有的映象
docker container ls --all # 檢視所有的容器
docker start/stop container_id #啟動/停止乙個容器
docker exec -it container_id /bin/bash #命令列進入乙個已經在後台執行的容器
docker rm container_id #刪除乙個容器
doker rmi imgae #刪除乙個映象
docker rename old_name new_name #更改容器名稱
docker run :根據映象建立乙個容器並執行乙個命令,操作的物件是 映象;
##-i: 以互動模式執行容器,通常與 -t 同時使用;
##-p: 隨機埠對映,容器內部埠隨機對映到主機的高階口
##-p: 指定埠對映,格式為:主機(宿主)埠:容器埠
##-t: 為容器重新分配乙個偽輸入終端,通常與 -i 同時使用;
docker exec :在執行的容器中執行命令,操作的物件是 容器。
##-d : 分離模式: 在後台執行
##-i : 即使沒有附加也保持stdin 開啟
##-t : 分配乙個偽終端
#docker cp :用於容器與主機之間的資料拷貝。
檔案拷貝到容器的根目錄下
docker cp test.deb container:/
#安裝deb檔案
docker exec -i container dpkg -i test.deb
#刪除拷貝進來的檔案,相當於在容器裡面執行rm操作
docker exec -i container rm test.deb
#docker 發布流程
1、【程式打包成deb檔案】
2、檢測docker是否存在test容器,存在的話把容器停止了然後刪除
3、在基礎映象基礎上開起乙個test容器
4、把要發布的deb拷貝進容器,並安裝
5、匯出容器test的tar包
6、可以匯入進docker中
#!/bin/sh
set -o errexit
project_name=
"test"
version=
$1if[!
$version];
then
echo
'please enter version ?'
exit -1
fitest_deb=
'test*.deb'if[
! -f ./$
]then
echo
"no install deb file "
exit 1
fidocker_check=
`docker ps -a |
awk -f ' '''`
if[$docker_check
=="test"];
then
docker stop test
docker rm test
fidocker run -d \
--privileged \
--name test\
-v /sys/bus/pci/drivers:/sys/bus/pci/drivers \
-v /sys/kernel/mm/hugepages:/sys/kernel/mm/hugepages \
-v /sys/devices/system/node:/sys/devices/system/node \
-v /dev:/dev \
--ulimit core=0:0 \
image_base:base \
/usr/bin/supervisord -c /etc/supervisor/supervisord.conf -n
docker cp ./$ test:/
docker exec -i sw_web dpkg -i $
docker exec -i sw_web rm
$echo
$echo
"install $ success!!"
echo
"wait export test"
docker stop test
docker export test> test_docker.tar
echo
"export success"
build_exe()'
)file_name=
$_v$_$_git$_docker.bin
sed -e "s/%%source_md5%%/$md5_source/" ./install_docker.sh >
$file_name
cat ./sw_web_docker.tar >>
$chmod +x $
echo
'source md5 : '
$md5_source
echo
'new install bin file generated:'$}
if[$? -ne 0 ]
;then
echo
"package backend fail"
else
build_exe
fi
Docker基本使用及常用命令
docker作為一種容器技術,可以用來快速部署服務。屬於程序級別,對程序進行隔離。具有啟動快,占用資源少,體積小等優點。1.映象 程式及其依賴打包在image檔案裡面,通過這個檔案,生成容器。image可以看做容器的模板,同乙個image檔案可以生成多個同時執行的容器例項。2.容器 容器 conta...
Docker安裝使用及常用命令
概念 映象 image 容器 container 倉庫 repository 官網 文件庫 映象倉庫 刪除舊版本 sudo yum remove docker docker common container selinux docker selinux docker engine 安裝部分工具包 新...
docker常用命令 Docker 常用命令筆錄
格式docker run 選項 映象 命令 引數.示例docker run it rm ubuntu 16.04 bash 示例解釋 it 這是兩個引數,乙個是 i,表示互動式操作,乙個是 t表示終端 rm 這個引數是說容器退出後隨之將其刪除 ubuntu 16.04 這是指用ubuntu 16.0...