一、使用环境
Ubuntu64位系统。
二、Docker安装
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.1ce-0ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
docker-ce | 17.03.0ce-0ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
Step 2: 安装指定版本的Docker-CE: (VERSION 例如上面的 17.03.1ce-0ubuntu-xenial)
sudo apt-get -y install docker-ce=[VERSION]
三、docker镜像下载
docker pull imageName
四、docker镜像迁移
4.1 docker save -o image.tar imageName
说明:image.tar为压缩包; imageName为已下载镜像。
4.2 将image.tar导入目标电脑中,执行命令:
docker load -i image.tar
4.3 查看镜像
docker images
五、docker镜像制作
5.1 以vue应用为例
- 准备好nginx基础镜像;
在线下载nginx基础镜像:
docker pull nginx
该条命令会下载最新版本的nginx基础镜像。
- 编写Dockerfile:
FROM nginx
COPY nginx.conf /etc/nginx/nginx.conf
COPY dist/ /usr/vuejs/nginx/
- 准备好nginx.conf文件:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 11000;
server_name localhost;
root /usr/vuejs/nginx/;
index index.html;
location ~^/usersrv[/\w*]*$ {
proxy_pass http://192.168.10.12:3000; // 后台服务地址
}
}
}
- 准备好vue编译文件:
dist
- 开始制作,执行命令:
docker build -t imagename:v1.0 .
注意:
镜像名称不能有大写字母。
- 运行镜像:
docker run --name ContainerName -p 11000:11000 -d imagename:v1.0
说明:
ContainerName为自定义名称,11000:11000–是将容器的 11000 端口映射到主机的 11000 端口。
- 查看镜像运行结果
docker ps
六、docker镜像上传
-对已有镜像打标签:
docker tag imageId(镜像id) repo:tag(仓库:标签)
#例子
docker tag imageId 192.168.10.12:5000/imageName:v1.0
其中:192.168.10.12:5000为本地私有仓库
上传镜像:
docker push 192.168.10.12:5000/imageName:v1.0
七、docker常用命令
docker基本命令
(1)docker version–查看docker服务是否安装上了。查看docker版本。
(2)docker info–查看docker的详细信息
(3)docker images–查看本地仓库里的镜像
(4)docker ps–查看正在活动着的容器
(5)docker ps -a --查看所有的容器(包括已终止的容器)
(6)docker search image-name–搜索你想要的镜像
(7)docker pull image-name–拉取镜像
(8)docker push image-name–推送镜像(至私有仓库或公用仓库上)
(9)docker logs XXX–查看日志
(10)docker help–查看docker帮助命令
(11)docker rmi images-name–删除镜像
(12)docker rm container-name–删除容器(删除之前先stop容器)
(13)docker stop container-name–停止容器运行
(14)docker run xxx–运行一个容器
(15)docker commit xxx–制作镜像(从容器到自己的镜像)
(16)systemctl start docker–启动docker
(17)systemctl restart docker; sudo service docker restart --重启docker
(18)docker service docker stop;docker systemctl stop docker --停止docker
容器管理
- 启动容器:docker start 容器id
- 停止容器:docker stop 容器id
- 重启容器:docker restart 容器id
- 移除容器:docker stop 容器id , docker rm 容器id
- 查看容器:docker ps
- 查看容器运行日志:docker logs -t -f 容器id
镜像的常用操作
- 查看镜像
docker images
- 删除镜像
语法
sudo docker rmi [OPTIONS] IMAGE [IMAGE…]
OPTIONS说明:
-f :强制删除;
–no-prune :不移除该镜像的过程镜像,默认移除。
实例:
sudo docker rmi faceweb
(注:所有的删除是不可逆的,请请谨慎操作。)