帮助命令
docker version #版本
docker info #系统信息,包括镜像和容器数量
docker 命令名称 --help #帮助命令
镜像命令
docker images # 查看本地主机上的镜像
docker search 镜像名称 # 搜索镜像
docker pull 镜像名称 # 下载镜像
docker rmi 镜像id # 删除镜像
容器命令
docker run 镜像id #新建容器并启动
docker ps #列出所有运行的容器
docker rm 容器id #删除指定容器
docker start 容器id #删除指定容器
docker restart 容器id #重启容器
docker stop 容器id #停止当前正在运行的容器
docker kill 容器id # 强制停止当前容器
exit # 从容器中退出到主机
ctrl+ p + q #容器不停止 退出
docker run -it 容器名称 /bin/bash #启动 并进入容器内部
docker run -d 容器名称 #后台启动容器
docker top 容器id # 查看容器进程中ps
其他命令
docker inspect 容器id # 查看镜像的元数据
docker ps # 查看当前正在运行的容器
docker exec -it 容器id /bin/bash # 进入当前正在运行的容器 以重新开启一个终端的形式
docker commit -m = "描述信息" -a="作者" 容器id 目标镜像名:[tag] #提交容器作为一个新的副本,保存当前容器状态
数据卷
在启动容器的时候可以指定主机中位置和容器中位置相互关联。
功能:实现容器内数据和主机数据的互通。相当于linux中的硬连接。
docker run -it -v 主机目录:容器目录 -p 主机端口:容器内端口
这样以后修改本地文件内容,容器内会自动同步。
匿名挂载
-v 容器内路径 #不指定卷的名称
具名挂载
docker run -d --name 自定义容器名字 -v 卷名字:容器内路径 容器本身名字 #指定卷的名字
docker volume inspect 卷的具体名字 # 查看卷信息
指定路径挂载
默认挂载主机的地址是在/var/lib/docker/volumes/xxxx/_data下的,docker volume ls查看的也是这个目录下的卷信息。
docker -v /主机路径:容器路径 #使用这种方式,docker volume ls 查看不到卷信息
数据卷容器
多个容器间数据共享。
--volumes-from 之前的某个容器名称 #将容器挂载到具体的容器中,可以实现容器间数据共享
dockerFile --构建docker镜像的命令脚本
构建步骤:
1.编写dockerFile文件
2.docker build 构建 称为一个镜像
3.docker run 运行镜像
4.docker push 发布镜像(dockerhub,阿里云仓库)
springboot项目整合docker
编写Dockerfile文件(D要大写)
FROM openjdk:8
WORKDIR /home/test
COPY aaa.jar /home/test
EXPOSE 9999
ENTRYPOINT ["java","-jar"]
CMD ["aaa.jar"]
注意还要启动mysql。
在打包jar之前要把mysql的url改成虚拟机的地址。
之后就按照上面的步骤执行就可以啦。