美文网首页
Docker安装和使用

Docker安装和使用

作者: Mr_LiTong | 来源:发表于2018-09-11 16:46 被阅读23次

链接

Docker 使用教程
Docker Hub
镜像加速器
Docker 问答录(100 问)
Docker 中文文档

CentOS安装Docker

使用 yum 安装

执行以下命令安装依赖包:

$ sudo yum install -y yum-utils \
           device-mapper-persistent-data \
           lvm2

鉴于国内网络问题,强烈建议使用国内源,官方源请在注释中查看。

执行下面的命令添加 yum 软件源:

$ sudo yum-config-manager \
    --add-repo \
    https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo

# 官方源
 $ sudo yum-config-manager \
     --add-repo \
     https://download.docker.com/linux/centos/docker-ce.repo

如果需要测试版本的 Docker CE 请使用以下命令:

$ sudo yum-config-manager --enable docker-ce-test

如果需要每日构建版本的 Docker CE 请使用以下命令:

$ sudo yum-config-manager --enable docker-ce-nightly

安装 Docker CE

更新 yum 软件源缓存,并安装 docker-ce

$ sudo yum makecache fast
$ sudo yum install docker-ce

使用脚本自动安装

在测试或开发环境中 Docker 官方为了简化安装流程,提供了一套便捷的安装脚本,CentOS 系统上可以使用这套脚本安装:

$ curl -fsSL get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh --mirror Aliyun

执行这个命令后,脚本就会自动的将一切准备工作做好,并且把 Docker CE 的 Edge 版本安装在系统中。

启动 Docker CE

$ sudo systemctl enable docker
$ sudo systemctl start docker

建立 docker 用户组

默认情况下,docker 命令会使用 Unix socket 与 Docker 引擎通讯。而只有 root 用户和 docker 组的用户才可以访问 Docker 引擎的 Unix socket。出于安全考虑,一般 Linux 系统上不会直接使用 root 用户。因此,更好地做法是将需要使用 docker 的用户加入 docker 用户组。

建立 docker 组:

$ sudo groupadd docker

将当前用户加入 docker 组:

$ sudo usermod -aG docker $USER

退出当前终端并重新登录,进行测试。

镜像加速

鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,强烈建议安装 Docker 之后配置 国内镜像加速

常用命令

$ sudo service docker start 启动Docker

镜像操作

列出镜像 $ docker image ls
镜像体积 $ docker system df
删除镜像 $ docker image rm [选项] <镜像1> [<镜像2> ...]

容器操作

docker ps 查看正在运行的容器
docker ps -a 查看所有容器
docker cp myNginx:/etc/nginx/nginx.conf ./nginx.conf 复制容器中的文件到指定目录
docker run创建并启动
例如:
$ docker run -t -i ubuntu:14.04 /bin/bash

-t 选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上, -i 则让容器的标准输入保持打开。

--rm:这个参数是说容器退出后随之将其删除。默认情况下,为了排障需求,退出的容器并不会立即删除,除非手动 docker rm。我们这里只是随便执行个命令,看看结果,不需要排障和保留结果,因此使用 --rm 可以避免浪费空间。
ubuntu:16.04:这是指用 ubuntu:16.04 镜像为基础来启动容器。
bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 bash。
如果使用了 -d 参数运行容器,此时容器会在后台运行并不会把输出的结果 (STDOUT) 打印到宿主机上面(输出结果可以用 docker logs 查看)。
注: 容器是否会长久运行,是和 docker run 指定的命令有关,和 -d 参数无关。
-p 则可以指定要映射的端口,并且,在一个指定端口上只可以绑定一个容器
-v 指定数据卷
docker container logs 容器ID 获取容器的输出信息
docker container stop 容器ID 终止一个运行中的容器
docker container ls -a 容器ID 查看所有容器
docker container start 容器ID 启动终止态的容器
docker container restart 容器ID 重启容器
docker attach 容器ID 进入容器,如果从这个 stdin 中 exit,会导致容器的停止。
docker exec -it 容器ID bash 进入容器,exit退出后不会导致容器关闭。
docker container rm 容器ID 删除容器,-v 同时删除数据卷
docker container prune 清楚所有处于终止态的容器
docker inspect web 查看数据卷的具体信息
docker volume prune 删除无主数据卷

docker-compose安装和卸载

例如,在 Linux 64 位系统上直接下载对应的二进制包。

$ sudo curl -L https://github.com/docker/compose/releases/download/1.17.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose

$ sudo rm /usr/local/bin/docker-compose 卸载

相关文章

网友评论

      本文标题:Docker安装和使用

      本文链接:https://www.haomeiwen.com/subject/innygftx.html