Docker简单试玩

Docker的优点

  • 打包了复杂的运行环境和配置,可以简化各种的实例化工作,各种的应用如web应用数据库应用等等都可以打包成一个镜像

  • 硬盘的使用是MB级别,秒级启动

Docker的安装

  • 分为社区版(CE)和企业版(EE)
  • 要求操作系统必须是64位的,centos内核版本在3.1以上 uname -r 查询内核版本
  • 安装指令
    • yum install -y docker-ce
  • 查看安装版本
    • docker version
  • 设置开机自启
    • systemctl enable docker
  • 启动docker
    • systemctl start docker

配置阿里云加速服务

  • 我的阿里容器镜像地址
  • 如果是连接Linux(CentOS)使用
    • 在/etx/docker目录下创建daemon.json文件
    • vi daemon.json
      { "registry-mirrors": ["https://99erpvmi.mirror.aliyuncs.com"] }
      • 注意缩进
    • sudo systemctl daemon-reload
    • sudo systemctl restart docker

错误:执行docker image时出现

  • Job for docker.service failed because start of the service was attempted too often. See “systemctl status docker.service” and “journalctl -xe” for details.To force a start use “systemctl reset-failed docker.service” followed by “systemctl start docker.service” again.
    • 解决方式:把daemon.json改为daemon.conf。使用mv命令修改后,docker启动正常。
    • mv daemon.json daemon.conf
    • systemctl restart docker

  • 查看所有的镜像(在新版本中不能再使用docker image指令,要熟悉)
    • docker image ls
  • 搜索镜像
    • docker search tomcat

错误:加速镜像不生效

  • 尝试方法:配置阿里的加速无效,配置中科大的镜像无效,最后执行了DaoClud的脚本解决问题,猜测为文件的书写有问题

  • 删除镜像
    • docker rmi -f 镜像ID或镜像名:TAG
      • -f表示强制删除
  • 获取元信息
    • docker inspect 镜像ID或镜像名:TAG
  • 删除当前容器:docker container rm 容器名
  • 创建容器
    • docker run –name tom2 -d -p 8989:8080 tomcat
    • -p为映射端口
    • -d为不阻塞

问题

  • run镜像时端口不可使用,8080
    • 解决:新放开一个端口就可以

  • 查看容器日志
    • docker logs 容器名

修改Tomcat主页内容

  • docker container exec -it tom2 /bin/bash
  • ls
  • cd webapps/
  • cd ROOT/
  • rm -f index.jsp
作者

liukun

发布于

2020-06-22

更新于

2021-05-28

许可协议