docker简单使用
1,启动 docker
$ sudo systemctl start docker # 记不住可以 敲 system + 【Tab】键
2,docker 下载 镜像
$ sudo docker pull redis #不指定版本便是 最后一个版本,指定版本是 docker pull redis:4.0
3,docker 创建容器 与 启动容器
$ sudo docker create nginx:1.12
$ sudo docker start nginx
# 在 Docker 里,还允许我们通过 docker run 这个命令将 `docker create` 和 `docker start` 这两步操作合成为一步,进一步提高工作效率。
$ sudo docker run --name nginx -d nginx:1.12
4,通过 docker ps 这个命令,我们可以罗列出 Docker 中的容器
$ sudo docker ps # 查看 运行的容器
$ sudo docker container ps # 查看 运行的容器,详细
$ sudo docker ps -a # 查看 运行与创建的容器
$ sudo docker container ps -a # 查看 运行与创建的容器,详细
5,进入容器中
$ sudo docker exec -it 777 /bin/bash #777 为容器id,不要输入很多,能与其他容器区分即可,也可以输入镜像名
6,退出 容器 使用 exit
docker注意事项
1,删除容器,先要stop 运行的容器
$ sudo docker stop 777 # 停止容器
$ sudo docker rm 777 # 删除容器
2,删除镜像,要先删除由 镜像创建的容器(全部删除才可以)
$ sudo docker rmi 镜像id或者镜像名 # 删除镜像
3,查看下载的镜像
$ sudo docker images
4, 容器使用说明:
# 要查看是否有自己想要的镜像 docker ps -a 。 不要使用 run 重复创建镜像
# 使用 start 要看 容器 是否运行,运行了直接 docker exec -it 容器id /bin/bash
5,问题描述 执行docker run image-id bash后,容器退出
# 解决方法
docker容器的主线程(dockfile中CMD执行的命令)结束,容器会退出
有以下几种解决方法:
使主进程无法结束
$ sudo docker run -d centos /bin/bash -c "while true;do echo hello docker;sleep 1;done"
使用交互式启动
$ sudo docker run -i [CONTAINER_NAME or CONTAINER_ID]
使用后台模式和tty选项
$ sudo docker run -dit [CONTAINER_NAME or CONTAINER_ID]
创建容器:
$ sudo docker create mysql:8.0
容器运行不退出的方法:
$ sudo docker run -d mysql:8.0 /bin/bash -c "while true;do echo hello docker;sleep 1;done"
linux 安装 docker-ce[社区版]
请查看官方文档进行安装:
-
-
To install Docker CE, you need a maintained version of CentOS 7. (需要 centos 7 以上)
-
-
-
To install Docker CE, you need the 64-bit version of one of these Ubuntu versions:
-
Bionic 18.04 (LTS)
-
Xenial 16.04 (LTS)
-
Trusty 14.04 (LTS)
-
-
安装方法:
【centos】 (>= centos7)
# 卸载旧版
$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
# 安装新版
# 1.安装依赖
$ sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
# 2.配置源
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
# 3.安装 docker-ce
$ sudo yum install docker-ce
# 4.启动 docker
$ sudo systemctl start docker
# 5.测试 hello-world
$ sudo docker run hello-world
# 6.安装 docker-compose
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose
$ docker-compose --version
【Ubuntu】
# 卸载旧版
$ sudo apt-get remove docker docker-engine docker.io
# 安装新版
# 1.安装依赖
$ sudo apt-get update
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
# 2.Add Docker’s official GPG key:
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# Verify that you now have the key with the fingerprint 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88, by searching for the last 8 characters of the fingerprint.
$ sudo apt-key fingerprint 0EBFCD88
# 3.配置源
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
# 4.安装 docker-ce
$ sudo apt-get update
$ sudo apt-get install docker-ce
# 5.测试 hello-world
$ sudo docker run hello-world
# 6.安装 docker-compose
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose
$ docker-compose --version