Doucker的中央仓库
1、Docker官方的中央仓库,仓库是最全的,但是下载速度慢
https://hup.docker.com/
2、国内的镜像网站:网易蜂巢、daoCloud
https://c.163yun.com/hub#/home
http://hub.daocloud.io/ (推荐使用)
3、在公司内采用私服的方式拉取镜像
需要在/etc/docker/daemon.json
{
"registry-mirrors":["https://registry.docker-cn.com"],
"insecure-registries":["ip:port"]
}
# 重启两个服务
systemctl daemon-reload
systemctl restart docker
Docker镜像操作
# 拉取镜像到本地
docker pull 镜像名称[:tag]
# 举个例子
docker pull daocloud.io/library/tomcat:8.5.15-jre8
# 查看全部的本地镜像
docker images
# 删除本地镜像
docker rmi 镜像id
# 镜像的导出
docker save -o 导出路径 镜像id
# 镜像的导入
docker load -i 镜像文件
# 修改镜像名称
daoker tag 镜像id 新镜像名称:版本
容器的操作
# 运行容器 (简单操作)
docker run 镜像id
docker run 远程网站地址
# 常用参数
docker run -d -p 宿主机端口:容器端口 --name 容器名称 镜像id|远程网站地址
-d:代表后台运行
-p:端口映射,映射当前Linux主机端口和容器端口
--name:指定容器名称
# 查看正在运行的容器
docker ps [-qa]
-a:查看所有的容器包括没有运行的容器
-q:只显示容器id
# 查看容器日志
docker logs -f 容器id
-f:滚动日志
# 进入到容器内部
docker exec -it 容器id sh|bash
# 删除容器(删除容器前,请停止容器)
docker rm 容器id
docker rm $(docker ps -qa)
# 停止容器
docker stop 容器id
docker stop $(docker ps -qa)
# 启动容器
docker start 容器id
Docker的应用
用docker部署SSM工程
1、
2、准备mysql容器
docker run -d -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 daocloud.io/library/mysql:5.7.4
3、准备tomcat容器
刚才已经下载镜像了,我们只需要运行镜像就可以了
docker run -d -p 8080:8080 --name tomcat 镜像id
# 通过命令将Linux主机文件拷贝到容器内部
docker cp 文件名称 容器id:容器内部路径
例如:
docker cp ssm.war fe:/usr/local/tomcat/webapps/
数据卷
为了部署SSM工程,需要使用到cp命令将Linux中文件复制到容器内部
数据卷:将Linux主机一个目录映射到容器的一个目录中。
可以操作Linux系统中文件,来达到操作容器内部文件效果。
# 创建数据卷
docker volume create 数据卷名称
创建数据卷之后,默认会放在/var/lib/docker/volumes/_data
# 查看数据卷的详细信息
docker volume inspect 数据卷名称
# 查看全部数据卷
docker volume ls
# 删除数据卷
docker volume rm 数据卷名称
应用数据卷
# 当你映射数据卷时候,如果数据卷不存在,Docker会帮你自动创建
# 启动容器的时候多加一个-V参数(会将容器内部自带的文件,存放在默认存放路径中)
docker run -v 数据卷名称:容器内部路径 镜像id
# 直接指定一个路径作为数据卷的存放位置(Linux主机路径是空的)
docker run -v Linux路径:容器内部路径 镜像id