一、Docker安装
1.更新软件包缓存
sudo apt update
sudo apt upgrade
2.安装 Docker-ce
sudo apt install docker-ce
3.设置开机自启动并启动 Docker-ce(安装成功后默认已设置并启动,可忽略)
sudo systemctl enable docker
sudo systemctl start docker
4.测试运行
sudo docker run hello-world
5.添加当前用户到 docker 用户组,可以不用 sudo 运行 docker(可选)
sudo groupadd docker #添加docker用户组
sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中
newgrp docker #更新用户组
docker ps #测试docker命令是否可以使用sudo正常使用
二、Docker使用
1.docker 客户端非常简单 ,我们可以直接输入 docker 命令来查看到 Docker 客户端的所有命令选项
ubuntu@VM-16-6-ubuntu:~$ docker
可以显示出所有docker的命令
在这里插入图片描述
2.容器使用
获取镜像
如果我们本地没有 ubuntu 镜像,我们可以使用 docker pull 命令来载入 ubuntu 镜像:
ubuntu@VM-16-6-ubuntu:~$ docker search scrapyd
在这里插入图片描述
选择需要的镜像
ubuntu@VM-16-6-ubuntu:~$ docker pull germey/scrapyd
启动容器
这里需要特别注意port问题
ubuntu@VM-16-6-ubuntu:~$ docker run -itd -p 6800:6800 germey/scrapyd
参数说明:
- -i: 交互式操作。
- -t: 终端。
- -d: 指定容器的运行模式
- -p: 前面的6800是主机的端口,后面的6800是容器端口,这个参数是把内外的端口匹配起来
- scrapyd: scrapyd 镜像。
- /bin/bash:放在镜像名后的是命令,这里我们不希望交互式 Shell,因此没有加 /bin/bash
要退出终端,直接输入 exit:
查看所有的容器命令如下:
ubuntu@VM-16-6-ubuntu:~$ docker ps -a
在这里插入图片描述
可以通过docker ps -a查看所有产生的容器其中比较重要的包括:
- CONTAINER ID : 容器的唯一id
- IMAGE : 镜像文件
- COMMAND :
- CREATED :
- STATUS :
- PORTS :
- NAMES : 对应的容器名称(系统随机命名,不可以重复)
使用 docker start 启动一个已停止的容器:
$ docker start <CONTAINER ID>
停止一个容器
$ docker stop <容器 ID>
停止的容器可以通过 docker restart 重启:
$ docker restart <容器 ID>
进入容器
在使用 -d 参数时,容器启动后会进入后台。此时想要进入容器,可以通过以下指令进入:
- docker attach
- docker exec:推荐大家使用 docker exec 命令,因为此退出容器终端,不会导致容器的停止。
docker exec -it <容器 ID> /bin/bash
删除容器
容器在不使用后,需要删除,否则会占用内存
$ docker rm -f <容器 ID>
列出镜像列表
~$ docker images
在这里插入图片描述
各个选项说明:
-
REPOSITORY:表示镜像的仓库源
-
TAG:镜像的标签
-
IMAGE ID:镜像ID
-
CREATED:镜像创建时间
-
SIZE:镜像大小
同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本,如 ubuntu 仓库源里,有 15.10、14.04 等多个不同的版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。
所以,我们如果要使用版本为15.10的ubuntu系统镜像来运行容器时,命令如下:
ubuntu@VM-16-6-ubuntu:~$ docker run -t -i germey/scrapyd /bin/bash
参数说明:
-i: 交互式操作。
-t: 终端。
ubuntu:15.10: 这是指用 ubuntu 15.10 版本镜像为基础来启动容器。
/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。
网友评论