docker安装及常规使用

参考1: https://yq.aliyun.com/articles/110806?spm=a2c4e.11153959.blogcont29941.13.699e6d2fGhh685
参考2:http://www.runoob.com/docker/docker-tutorial.html

1、安装

Docker CE 镜像源站
使用官方安装脚本自动安装

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

手动安装帮助 Ubuntu 18.04

# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装 Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce

# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# apt-cache madison docker-ce
#   docker-ce | 17.03.1~ce-0~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
#   docker-ce | 17.03.0~ce-0~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# Step 2: 安装指定版本的Docker-CE: (VERSION 例如上面的 17.03.1~ce-0~ubuntu-xenial)
# sudo apt-get -y install docker-ce=[VERSION]

2、使用非root用户

sudo groupadd docker
sudo gpasswd -a xu docker  # 此处“xu”为你电脑的用户名

然后注销或者重启

3、修改Docker默认镜像和容器的存储位置

http://www.cnblogs.com/bigberg/p/8057807.html
Docker默认的镜像和容器存储位置在/var/lib/docker中
1、修改docker.service文件

cd /etc/systemd/system/multi-user.target.wants
 
vim docker.service
 
 
ExecStart=/usr/bin/dockerd --graph=/home/xu/docker --storage-driver=overlay --registry-mirror=https://jxus37ad.mirror.aliyuncs.com
  • –graph=/data/docker:docker新的存储位置
  • –storage-driver=overlay : 当前docker所使用的存储驱动

2、重启docker

systemctl daemon-reload
systemctl restart docker

# docker info
在这里插入图片描述

4、启动、重启、关闭命令

功能 shell命令
启动 systemctl start docker
守护进程重启 sudo systemctl daemon-reload
重启docker服务 systemctl restart docker
重启docker服务 sudo service docker restart
关闭docker service docker stop
关闭docker systemctl stop docker

5、docker容器使用

容器 shell 命令
列出镜像列表 docker images
查看正在运行的容器 docker ps
查看容器内部的标准输出 docker logs [CONTAINER ID / NAMES]
查看容器内部运行的进程 docker top [CONTAINER ID / NAMES]
停止应用容器 docker stop [CONTAINER ID / NAMES]
重启应用容器 docker start [CONTAINER ID / NAMES]
删除不需要的容器 docker rm [CONTAINER ID / NAMES]
设置网络端口 eg: docker run -d -p 5000:5000 training/webapp python app.py

注意:删除容器时,容器必须是停止状态

6、docker镜像使用

镜像 shell 命令
列出本地主机上的镜像 docker images
获取一个新的镜像 docker pull [images_name]
查找镜像 docker search [images_name]
运行镜像 docker run [images_name]

当我们从docker镜像仓库中下载的镜像不能满足我们的需求时,我们可以通过以下两种方式对镜像进行更改。
1.从已经创建的容器中更新镜像,并且提交这个镜像
2.使用 Dockerfile 指令来创建一个新的镜像

1.更新镜像,并且提交镜像 shell命令
1.1 使用镜像来创建一个容器 eg:   docker run -t -i ubuntu:15.10 /bin/bash
1.2 在运行的容器内进行更新 apt-get update
1.3 退出容器 exit
1.4 提交容器副本 eg:  docker commit -m=“has update” -a=“runoob” e218edb10161 runoob/ubuntu:v2
-m:提交的描述信息   -a:指定镜像作者
e218edb10161:容器ID
runoob/ubuntu:v2:指定要创建的目标镜像名
1.5 使用新镜像启动容器 eg:   docker run -t -i runoob/ubuntu:v2 /bin/bash
2.创建镜像 shell命令
创建一个 Dockerfile 文件 cat Dockerfile
使用命令 docker build docker build -t runoob/centos:6.7 .
-t :指定要创建的目标镜像名
. :Dockerfile 文件所在目录,可以指定Dockerfile 的绝对路径
设置镜像标签 shell命令
为镜像添加一个新的标签 eg: docker tag 860c279d2fec runoob/centos:dev
docker tag 镜像ID,这里是 860c279d2fec ,用户名称、镜像源名(repository name)和新的标签名(tag)。
docker docker
docker docker
docker docker

7、docker容器连接

通过端口连接到一个docker容器网络端口映射

网络端口映射
创建一个python应用程序,可以指定容器绑定的网络地址。
-P :是容器内部端口随机映射到主机的高端口
docker run -d -P training/webapp python app.py
-p : 是容器内部端口绑定到指定的主机端口
docker run -d -p 5000:5000 training/webapp python app.py
指定容器绑定的网络地址
docker run -d -p 127.0.0.1:5001:5000 training/webapp python app.py,这样就可以通过访问127.0.0.1:5001来访问容器的5000端口。
默认都是绑定 tcp 端口,如果要绑定 UDP 端口,可以在端口后面加上 /udp
docker run -d -p 127.0.0.1:5000:5000/udp training/webapp python app.py

Docker容器连接
端口映射并不是唯一把 docker 连接到另一个容器的方法。docker有一个连接系统允许将多个容器连接在一起,共享连接信息。docker连接会创建一个父子关系,其中父容器可以看到子容器的信息。

容器命名:
当我们创建一个容器的时候,docker会自动对它进行命名。另外,我们也可以使用–name标识来命名容器。
docker run -d -P --name runoob training/webapp python app.py

猜你喜欢

转载自blog.csdn.net/qq_18644873/article/details/84854181
今日推荐