使用步骤
1.yum包更新到最新
2.安装需要的软件包
yum-util提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
1
| sudo yum install -y yum-utils decice-mapper-persistent-data lvm2
|
3.设置yum源为阿里云
1
| sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
|
4.安装Docker
1
| sudo yum install docker-ce
|
5.安装完后查看Docker版本
6.设置ustc的镜像源
编辑文件
1
| vi /etc/docker/daemon.json
|
1 2 3
| { "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"] }
|
7.拉取镜像
8.删除镜像
9.删除所有镜像
1
| docker rmi `docker images -q`
|
10.交互方式创建容器
1
| docker run -it --name=容器名 镜像名:标签 /bin/bash
|
11.退出当前容器
12.查看运行容器
13.查看所有容器
14.查看最后一次运行的
15.查看停止的
1
| docker ps -f status=exited
|
16.守护方式创建容器
1
| docker run di --name=容器名 镜像名:标签
|
17.登录守护容器
1
| docker exec -it 容器名(或容器id) /bin/bash
|
18.停止启动容器
1
| docker stop/start 容器名称(id)
|
19.文件拷贝
1 2
| 拷贝到容器内(拷贝到外,相反) docker cp 需要拷贝的文件或者目录 容器名称:容器目录
|
20.目录挂载
1
| docker run -di -v /usr/loacl/myhtml:/usr/loacl/myhtml --name=mycentos centos:7
|
21.查看IP地址
1 2 3
| docker inspect 容器名称(id) 或者 docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名称(id)
|
22.删除容器
Mysql部署
1.拉取Mysql镜像
2.创建容器
1
| docker run -di --name=tensqure_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
|
1
| -e 代表添加环境变量MYSQL_ROOT_PASSWORD是root的用户密码
|
3.进入mysql容器
1
| docker exec -it tensqure_mysql /bin/bash
|
4.登录mysql
tomcat部署
1
| docker pull tomcat:7-jre7
|
1
| docker run -di --name=mytomcat -p 8080:8080
|
1
| -v /usr/loacl/webapps:/usr/loacl/tomcat/webapps tomcat:7-jre7
|
nginx部署
1
| docker run -di --name=mynginx -p80:80 nginx
|
redis部署
1
| docker run -di --name=myredis -p 6379:6379 redis
|
迁移与备份
保存为镜像
1
| docker commit mynginx mynginx_i
|
将镜像保存为tar文件
1
| docker save -o mynginx.tar mynginx_i
|
镜像迁移和恢复
1
| docker load -i mynginx.tar
|
Dockerfile构建
FROM centos:7
MAINTAINER loki
WORKDIR /usr
RUN mkdir /usr/local/java
ADD jdk-8u211-linux-x64.tar.gz /usr/local/java
ENV JAVA_HOME /usr/local/java/jdk.1.8.0_211
ENV JRE_HOME $JAVA_HOME/jre
ENV CLASSPATH $JAVA_HOME/bin/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
ENV PATH $JAVA_HOME/bin:$PATH
然后
1
| docker build -t='jdk1.8'
|
Docker私有仓库构建
docker pull registry
docker run -di --name=registry -p 5000:5000 registry
修改daemon.json
1
| vi /etc/docker/daemon.json
|
1
| 添加:{"insecure-registries":["192.168.16.40:5000"]} 让docker信任私有仓库地址
|
镜像上传
docker tag jdk1.8 192.168.16.40:5000/jdk1.8
docker push 192.168.16.40:5000/jdk1.8