安装Docker虚拟机
◆ 先更新yum软件管理器,然后再安装Docker
#更新yum软件管理器
yum -y update
#安装Docker
yum install -y docker #-y 代表选择程序安装中的yes选项
管理Docker虚拟机
◆ 启动、关闭与重启
#启动Docker
service docker start
#关闭Docker
service docker stop
#重启Docker
service docker restart
在线安装镜像
◆ 配置加速器
Step1:
先进入DaoCloud的官网https://www.daocloud.io/ 需要先注册才能使用它的加速器
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://1d6584c4.m.daocloud.io
将上述命令在CentsOS中执行
Step2:
编辑Docker配置文件 去掉中的',',否则加速器使用不了
vi /etc/docker/daemon.json
将{"registry-mirrors": ["http://1d6584c4.m.daocloud.io"],} 改为 {"registry-mirrors": ["http://1d6584c4.m.daocloud.io"]}
然后保存daemon.json文件
◆ 在线安装Java镜像
#在仓库中查找Java镜像
docker search java #将仓库中镜像中找到自己需要的的Java镜像下载到本机
docker pull 镜像名称
eg:我需要一个镜像名称为docker.io/java的镜像
docker pull docker.io/java
注:国外镜像仓库下载速度较慢,建议使用国内镜像仓库,如DaoCloud(加速器)
#显示Docker里面的所有镜像
docker images
导出导入镜像
◆ 导入导出镜像
#导出镜像名称为docker.io/java的镜像
docker save docker.io/java > /home/java.tar.gz
#导入镜像
docker load < /home/java.tar.gz
#显示Docker里面的所有镜像
docker images
#删除镜像名称为docker.io/java的镜像
docker rmi docker.io/java
启动容器
◆ 启动名称为docker.io/java的镜像会创建出一个运行状态的容器
dockerrun -it --name myjava docker.io/java bash
dockerrun -it --name myjava docker.io/java bash
-it:表示启动容器后开启一个交互的界面
--name:表示为这个启动的容器命个名字,上面的”myjava“就是容器的名字。(注:该选项为可选项,也可以不给容器取名字)
docker.io/java:镜像的名称
bash:启动这个容器bash命令行
docker run -it --name myjava -p 9000:8080 -p 9001:8085 docker.io/java bash
-p:宿主机端口:docker虚拟机端口
注:一个-p命令映射一个端口,多个端口的映射就在后面写多个-p参数即可
docker run -it --name myjava -v /home/project:/soft --privileged docker.io/java bash -v:宿主机目录:docker虚拟机的目录
--privileged:表示docker虚拟机在操作宿主机目录里面拥有最高权限
注:一个-v命令映射一个文件夹,多个文件夹的映射就在后面写多个-v参数即可
另外像数据库文件、软件配置文件建议都放在宿主机上通过映射的方式给到Docker虚拟机,这个将来在备份和恢复时就很方便
#先在宿主机上创建一个目录
mkdir /home/project
#将上面的命令组合下启动一个容器
docker run -it -p 9000:8080 -p 9001:8085 -v /home/project:/soft --privileged --name myjava docker.io/java bash
这就表示已经进入了Docker虚拟机里面的环境了
#在容器里面测试一些 soft文件夹下的文件写入
cd /soft
touch hello.txt
echo Thanks > hello.txt
#退出当前容器
exit
#去当前宿主机的目录下去查看一下文件是否写入
cat /home/project/hello.txt
暂停和停止容器
◆ 暂停和停止容器的命令
#暂停容器名为myjava的容器 命令格式:docker pause 容器名称|容器编号
docker pause myjava
#启动(用于被pause暂停了的容器)容器名为myjava的容器 命令格式:docker unpause容器名称|容器编号
docker unpause myjava
#停止容器名为myjava的容器 命令格式:docker stop 容器名称|容器编号
docker stop myjava
#启动(用于被stop停止了的容器)容器名为myjava的容器 命令格式:docker start -i 容器名称|容器编号
docker start -i myjava
删除容器
◆ 删除容器命令
#删除容器名为myjava的容器,前提是该容器必须是通过stop完全停止了的容器
docker rm myjava
#查看所有的容器 docker ps -a