Docker

Docker是一个开源的应用容器引擎,使用Go语言开发。基于LXC(Linux Container)内核虚拟化技术实现,提供一系列更强的功能,比如镜像、Dockerfile等;
Docker理念是将应用及依赖包打包到一个可移植的容器中,可发布到任意Linux发行版Docker引擎上。使用沙箱机制运行程序,程序之间相互隔离;

Docker三要素:容器、镜像、仓库

Docker官网: https://hub.docker.com/

一、Docker基本命令

  1. 启动Docker: systemctl start docker
  2. 停止Docker: systemctl stop docker
  3. 重启Docker: systemctl restart docker
  4. 开机启动Docker:systemctl enable docker
  5. 查看Docker信息:docker info
  6. 查看Docker帮助文档: docker --help
  7. 查看Docker版本信息: docker version

二、镜像命令

  1. 查看所有镜像: docker images
    在这里插入图片描述

在这里插入图片描述

  1. 搜索镜像: docker search tomcat (镜像)
  2. 下载镜像: docker pull tomcat:5.0 (镜像:版本)
  3. 删除镜像:
项目命令行
删除docker rmi tomcat:5.0
删除多个docker rmi mysql:5.7 ngnix:latest
强制删除docker rmi -f mysql:5.7
全部删除docker rmi -f $(docker images -qa)

三、容器命令

(1)基本命令
  1. 创建并启动容器: docker run --name myTomcat01 tomcat:latest
  2. 查询容器:
项目命令行
查询正在运行的容器docker ps
查询所有的容器docker ps -a
查询停止的容器docker ps -f status=exited
查询最近创建的2个容器docker ps -n 2
  1. 退出容器: exit
  2. 进入容器: docker attach 容器ID/名称
  3. 启动容器: docker start 容器ID/名称
  4. 重启容器: docker restart 容器ID/名称
  5. 停止容器: docker stop 容器ID/名称
  6. 删除容器:
项目命令行
删除容器docker rm 容器Id
强制删除docker rm -f 容器Id
删除多个docker rm -f 容器ID1 容器ID2
删除所有docker rm -f $(docker ps -qa)
(2)高级命令
  1. 守护式创建并启动容器: docker run -di --name myTomcat01 镜像ID
  2. 查看容器日志: docker logs 容器ID
  3. 端口映射: docker run -d -p 8888:8080 tomcat (宿主机端口:容器端口)

四、定制镜像

1、 提交容器为镜像

命令: docker commit -a=‘作者’ -m=‘备注’ 容器ID 镜像新名字

2、推送镜像到hub服务器

(1)登录: docker login
(2)推送: docker push 镜像名字:版本号

3、推送镜像到阿里云

(1)https://cr.console.aliyun.com/ 创建命名空间、创建镜像仓库
(2)按照操作

1. 登录阿里云Docker Registry
$ docker login --username=junn****liang registry.cn-beijing.aliyuncs.com
用于登录的用户名为阿里云账号全名,密码为开通服务时设置的密码。您可以在访问凭证页面修改凭证密码。

2. 从Registry中拉取镜像
$ docker pull registry.cn-beijing.aliyuncs.com/allen900507/tomcat:[镜像版本号]
3. 将镜像推送到Registry
$ docker login --username=junn****liang registry.cn-beijing.aliyuncs.com
$ docker tag [ImageId] registry.cn-beijing.aliyuncs.com/allen900507/tomcat:[镜像版本号]
$ docker push registry.cn-beijing.aliyuncs.com/allen900507/tomcat:[镜像版本号]
请根据实际镜像信息替换示例中的[ImageId][镜像版本号]参数。

4. 示例
使用"docker tag"命令重命名镜像,并将它通过专有网络地址推送至Registry。

$ docker images
REPOSITORY                                                         TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
registry.aliyuncs.com/acs/agent                                    0.7-dfb6816         37bb9c63c8b2        7 days ago          37.89 MB
$ docker tag 37bb9c63c8b2 registry-vpc.cn-beijing.aliyuncs.com/acs/agent:0.7-dfb6816
使用 "docker push" 命令将该镜像推送至远程。

$ docker push registry-vpc.cn-beijing.aliyuncs.com/acs/agent:0.7-dfb6816

五、容器目录挂载

命令: docker run -it -v /宿主机目录:/容器目录 镜像名
挂牌目录只读: docker run -it -v /宿主机目录:/容器目录:ro 镜像名

六、备份和迁移

命令: docker save -o 备份镜像的名称 原镜像名称:tag版本
还原:docker load -i 备份镜像的名称

七、DockerFile

编写DockerFile
构建 docker build -f myTomcatDockerFile -t mytomcat:1.5 .
运行 docker run -it p 8080:8080 镜像ID

VOLUMN[’/home/v1’.’/home/v2’]

八、私有仓库

1、拉取私有仓库镜像 docker pull registry
2、启动私有仓库容器 docker run -di --name=myRegistry -p 5000:5000 registry
3、测试 http://ip:5000/v2/_catalog
4、标记镜像为私有仓库镜像: docker tag tomcat:7 192.168.1.112:5000/mytomcat7
5、上传镜像到私有仓库: docker push 192.168.1.112:5000/mytomcat7

六、Docker安装tomcat

七、Docker安装MySql

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值