LuoguP7694 [COCI2009-2010#4] AUTORI 題解
阿新 • • 發佈:2021-12-15
docker安裝
目前,CentOS 僅發行版本中的核心支援 Docker。
Docker 執行在 CentOS 7 上,要求系統為64位、系統核心版本為 3.10 以上。 yum remove docker
-
確定你是CentOS7及以上版本,我們已經做過了
-
yum安裝gcc相關環境(需要確保 虛擬機器可以上外網 )
yum -y install gcc
yum -y install gcc-c++
- 解除安裝舊版本
yum remove docker
- 安裝需要的軟體包
yum install -y yum-utils
- 設定映象倉庫
# 正確推薦使用國內的
yum-config-manager --add-repo http://mirrors.aliyun.com/dockerce/linux/centos/docker-ce.re
- 更新yum軟體包索引
yum makecache fast
- 安裝 Docker CE
yum install docker-ce docker-ce-cli containerd.io
- 啟動 Docker
systemctl start docker
- 測試命令
docker version docker run hello-world #執行一個hello-world映象,沒有則會自動去下載 docker images
- 解除安裝
systemctl stop docker
yum -y remove docker-ce docker-ce-cli containerd.io
rm -rf /var/lib/docker
阿里雲映象加速
-
註冊一個屬於自己的阿里雲賬戶(可複用淘寶賬號)
-
進入管理控制檯設定密碼,開通
-
檢視映象加速器自己的
搜尋>容器映象服務>映象工具>映象加速器>centos
-
配置加速器,照著命令執行即可
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["每個人的加速器地址都不一樣"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
docker常用命令
提醒:docker程序使用 Unix Socket 而不是 TCP 埠。而預設情況下,Unix socket 屬於 root 使用者,因此需要 root許可權 才能訪問。 如果不在root下,docker命令前加上sudo
基礎命令
docker version #檢視docker版本
docker info #檢視docker的系統資訊
sudo docker [命令] --help #幫助文件
映象命令
docker images #顯示映象,預設-a
#選項
-a, --all 顯示所有映象
-q, --quiet 只顯示映象id
docker search [搜尋內容] #搜尋映象
#選項
--filter=stars=3000 #搜尋映象STARS>=3000的
#例:搜尋帶mysql關鍵字映象STARS>=3000的
docker search mysql --filter=stars=3000
docker pull mysql #預設下載mysql最新版本
docker pull mysql:5.7 #指定版本下載
docker rmi -f [映象id/名稱] #刪除映象
docker rmi -f [映象id] [映象id] #刪除多個映象
docker rmi -f $(docker images -aq) #刪除全部映象
容器命令
說明:有映象才能建立容器,我們這裡使用 centos 的映象來測試,就是虛擬一個 centos !
docker pull centos
docker run [可選引數] 容器id/容器名
# 常用引數說明
--name="Name" # 給容器指定一個名字, tomcat1
-d # 後臺方式執行容器,並返回容器的id!
-i # 以互動模式執行容器,通過和 -t 一起使用
-t # 給容器重新分配一個終端,通常和 -i 一起使用
-P # 隨機埠對映(大寫)
-p # 指定埠對映,-p 8080:8080
-p ip:主機埠:容器埠
-p 主機埠:容器埠 (常用)
-p 容器埠
# 使用centos進行用互動模式啟動並進去容器,在容器內執行/bin/bash命令!
docker run -it centos /bin/bash
exit # 容器停止退出
ctrl+P+Q # 快捷鍵組合,容器不停止退出
docker start (容器id or 容器名) # 啟動容器
docker restart (容器id or 容器名) # 重啟容器
docker stop (容器id or 容器名) # 停止容器
docker kill (容器id or 容器名) # 強制停止容器
docker rm 容器id # 刪除指定容器
docker rm -f $(docker ps -a -q) # 刪除所有容器
docker ps -a -q|xargs docker rm # 刪除所有容器