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的脚本解决问题,猜测为文件的书写有问题
- 其脚本创建了daemon.json文件
- {“registry-mirrors”: [“http://f1361db2.m.daocloud.io"]}
- 删除镜像
- docker rmi -f 镜像ID或镜像名:TAG
- -f表示强制删除
- docker rmi -f 镜像ID或镜像名:TAG
- 获取元信息
- 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