您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關Docker如何實現在線與離線安裝,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
這里采用yum源命令安裝前期準備的依賴包,包括yum-utils、device-mapper-persistent-data、lvm2
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
因為官方鏡像倉庫網速較慢,在此設置阿里云鏡像代理,以便快速下載、上傳鏡像。
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
接下來安裝Docker-CE 社區版,通過以下命令查看docker社區版安裝包列表。如下圖所示各docker版本信息。
yum list docker-ce --showduplicates | sort -r
選擇對應版本安裝docker
sudo yum install docker-ce.x86_64
啟動
sudo systemctl enable docker
sudo systemctl start docker
驗證:查看版本信息命令,出現下圖時表明安裝成功。
docker version
提供以下三種方式下載docker離線安裝包
Docker官方地址:docker down
1.百度云下載地址: https://pan.baidu.com/s/1tZpsOvY0wmCfwHXlNJuq8Q 提取碼: rhaq
2.有網服務器執行命令下載:wget https://download.docker.com/linux/static/stable/x86_64/docker-18.09.6.tgz
3.官方參考文檔:https://docs.docker.com/install/linux/docker-ce/binaries/#install-static-binaries
將已下載好的docker離線包拷貝到服務器,解壓壓縮包
tar -xvf docker-18.09.6.tgz
將解壓出來的docker文件內容移動到 /usr/bin/ 目錄下
cp docker/* /usr/bin/
注冊編輯docker服務
vim /etc/systemd/system/docker.service
寫入以下內容后保存
[Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com After=network-online.target firewalld.service Wants=network-online.target [Service] Type=notify # the default is not to use systemd for cgroups because the delegate issues still # exists and systemd currently does not support the cgroup feature set required # for containers run by docker ExecStart=/usr/bin/dockerd ExecReload=/bin/kill -s HUP $MAINPID # Having non-zero Limit*s causes performance problems due to accounting overhead # in the kernel. We recommend using cgroups to do container-local accounting. LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity # Uncomment TasksMax if your systemd version supports it. # Only systemd 226 and above support this version. #TasksMax=infinity TimeoutStartSec=0 # set delegate yes so that systemd does not reset the cgroups of docker containers Delegate=yes # kill only the docker process, not all processes in the cgroup KillMode=process # restart the docker process if it exits prematurely Restart=on-failure StartLimitBurst=3 StartLimitInterval=60s [Install] WantedBy=multi-user.target
添加權限后啟動
chmod +x /etc/systemd/system/docker.service
重新加載配置文件
systemctl daemon-reload
啟動Docker
systemctl start docker
設置開機自啟
systemctl enable docker.service
驗證是否安裝成功
systemctl status docker
docker -v
**
四、常用命令(搜索、下載本地未有鏡像需要聯網)
**
搜索鏡像,
#docker search 鏡像名稱
docker search java
下載鏡像
#docker pull 鏡像名稱
docker pull java
查看已下載的鏡像
docker images
刪除鏡像
刪除單個鏡像:docker rmi 鏡像名稱
刪除所有鏡像:docker rmi -f $(docker images)
操作容器
使用docker run命令可新建并啟動一個容器,例如使用java鏡像啟動:docker run java /bin/echo 'Hello World'
其它啟動可選附帶參數:
-d 選項:表示后臺運行
-P 選項:隨機端口映射
-p 選項: 指定端口映射,有以下四種模式:
① ip:hostPort:containerPort
② ip::containerPort
③ hostPort:containerPort
④ containerPort
實例測試Nginx容器
docker run --name nginxTest -d -p 91:80 nginx
說明:docker 啟動容器時,本地無該容器時會自動從Docker Hup下載引用
-d #后臺運行
-p #宿主機端口:容器端口 #開放容器端口到宿主機端口
–name #自定義容器名稱
瀏覽器訪問http://服務器ip:91 ,如果出現Nginx主頁則表示啟動成功。
查看容器狀態
查看正在運行容器詳情 docker ps
查看所有容器詳情 docker ps -a
– CONTAINER ID #容器ID
– IMAGE #鏡像
– CREATED #創建時間
– STATUS #狀態 Up代表正在運行,Exited 表示已停止運行
– PORTS #端口
– NAMES #容器名稱
查看容器日志
格式:docker logs -f -t --tail 行數 容器名 或者 docker logs -f -t --tail 行數 容器ID
docker logs -f -t --tail 200 483a128fdb39
停止容器
docker stop 容器ID 或 docker stop 容器名稱
強制停止容器
docker kill 容器ID
啟動已停止的容器
docker start 容器ID
重啟容器
docker restart 容器ID
進入容器
(1)使用docker attach 命令進行容器,有多窗口操作會同步顯示和阻塞問題。
docker attach 容器ID
(2)使用nsenter進入容器
docker inspect --format "{{.State.Pid}}" 容器ID #查詢出pid
nsenter --target 查詢的pid --mount --uts --ipt --net --pid
(3) 推薦 使用docker exec 命令,該命令在1.3.x版本之后提供。
docker exec -it 容器ID /bin/bash
查看容器詳情
docker inspect 容器ID
刪除容器
docker rm 容器ID
#該命令不可刪除正在運行的容器,要執意刪除加-f 參數
打包鏡像為離線包
docker save -o 文件名.tar 鏡像名稱
加載離線鏡像包
docker load < 文件名.tar
使用Dockerfile構建Docker鏡像
以上面創建的Nginx為例,創建dockerfiler文件
touch Dockerfile
編輯dockerfiler文件
vim Dockerfile
填入以下內容
FROM nginx #添加進入docker容器后的目錄(可以不填) WORKDIR /opt/hello RUN echo '<h2>Hello World!</h2>' > /usr/share/nginx/html/index.html
在Dockerfile所在路徑執行以下命令
docker build -t nginx:my .
啟動一個docker容器
docker run -d -p 92:80 nginx:my
當然也可指定配置文件路徑
docker run -d -p 92:80 -v /u01/hello/config:/opt/hello/config nginx:my
說明:-d 后臺運行,-p 對外暴露端口:內部端口 -v linux文件路徑:容器內路徑 --name 容器昵稱 啟動的鏡像:版本號
之后只需要在linux 下的/u01/hello/config修改配置,重啟容器加載。
瀏覽器訪問http://ip:92 ,可看到“Hello World!”信息。
上述就是小編為大家分享的Docker如何實現在線與離線安裝了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。