docker镜像,容器的操作和应用

镜像操作

拉取镜像

从中央仓库拉取到本地

docker pull 镜像名称[:tag]

#举个例子 :docker pull daocloud.io/libarary/tomcat:8.5.15-jre8

查看本地全部镜像

查看本地已经安装过的镜像信息,包含标识,名称,版本,更新时间,大小

docker images

删除本地镜像

镜像会占用磁盘空间,可以直接手动删除.标识通过查看获取

docker rmi 镜像的标识

镜像的导入导出

如果因为网络原因可以通过硬盘的方式传输镜像,虽然不规范,但是有效,但是这种方式导出的镜像版本都是null,需要手动修改

#将本地的的镜像导出
docker save -o 导出的路径 镜像id
#如果本地的镜像文件
docker load -i 镜像文件
#修改镜像名称
docker tag 镜像id 新镜像名称:版本

容器的操作

运行容器

运行容器

#简单操作
docker run 镜像的标识[:tag]
#常用的参数
docker run -d -p 宿主机端口:容器端口 --name 容器名称 镜像标识|镜像名称[:tag]
#-d 代表后台运行容器
#-p 宿主机端口:容器端口:为了映射当前Linux的端口和容器的端口
#--name 容器名称:指定的容器名称

查看正在运行的容器

查看全部正在运行的容器

docker ps [-qa]

# -a : 查看全部的容器,包括没有运行的

# -q : 只查看容器标识

查看容器日志

查看容器日志,以查看容器运行的信息

docker logs -f 容器id

# -f : 可以滚动查看日志的最后几行

进入容器内部

可以进入容器内部进行操作

docker exec -it 容器id bash

复制内容到容器

将宿主机的文件复制到容器内部指定的目录

docker cp 文件名称 容器id: 容器内部路径

重启&启动&停止&删除容器

容器的启动,停止,删除等操作,后续经常会使用到

#重新启动容器

docker restart 容器id

#启动已停止运行的容器

docker start 容器id

#停止指定容器(删除容器前先停止容器)

docker stop $(docker ps -qa)

#删除指定容器

docker rm 容器id

删除全部容器

docker rm $(docker ps -qa)

Docker应用

Docker 安装Tomcat

运行Tomcat容器,为部署SSM做准备

docker run -d -p 8080:8080 --name tomcat daocloud.io/library/tomcat:8.5.15-jre8

Docker安装MySQL

运行MySQL容器,为SSM工程做准备

docker run -d -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=root daocloud.io/library/mysql:5.7.4

部署SSM工程

修改SSM工程环境,设置为Linux中Docker容器的信息

通过Maven的package重新打成war包

讲Windows下的war包复制到Linux中

通过docker命令将宿主机的war包复制到容器内部

测试访问SSM工程

数据卷

为了部署SSM工程,需要使用cp命令将宿主机内的ssm.war文件复制到容器内部

数据卷:  将宿主机的一个目录映射到容器的一个目录中

可以在宿主机中操作目录中的内容,那么容器内部映射的文件也会跟着一起改变

创建数据卷

创建年数据卷之后,默认会存放在一个目录下啊/var/lib/docker/volumes/数据圈名称/_data

docker volume create 数据圈名称

查看数据卷详情

查看数据卷的详细信息,可以查询到存放路径,创建时间等等

docker volume inspect 数据卷名称

查看全部数据卷

查看全部数据卷信息

docker volume ls 

删除数据卷

删除指定数据卷

docker volume rm 数据卷名称

容器映射数据卷

映射有两种方式:

通过数据圈名称映射,吐过数据卷不存在.docker 会帮你自动穿件,会将容器内部自带的文件,存储在默认的存放路径中

通过路径映射数据圈,直接指定一个路径作为数据圈的存放位置.但是这个路径下是空的

#通过数据卷名称映射

docker run -v 数据圈名称: 容器内部的路径 镜像id

#通过路径映射数据卷

docker run -v 路径:容器内部的路径 镜像id
我会写代码+代码改变世界=我会改变世界! 为什么要改变世界? 如果无法改变世界,那么,世界就会改变我......
原文地址:https://www.cnblogs.com/chougoushi/p/13395628.html