本文共 1993 字,大约阅读时间需要 6 分钟。
docker使用
系统环境声明 Centos 71.1 Docker 优点相比于传统的虚拟化技术,容器更加简洁高效传统虚拟机需要给每个 VM 安装操作系统1.2 Docker 的缺点容器的隔离性没有虚拟化强共用 Linux 内核,安全性有先天缺陷SELinux 难以驾驭监控容器和容器排错是挑战2.1安装Docker执行yum源更新命令yum clean allyum makecache安装依赖包yum install -y yum-utils device-mapper-persistent-data lvm2yum -y install java 版本根据需求安装安装CentOS7 docker镜像yum-config-manager —add-repo https://download.docker.com/linux/centos/docker-ce.repo安装社区版dockeryum install docker-ce查看已经安装好的docker包yum list installed | grep docker2.2 启动docker容器systemctl start dockerifconfig 可以看到docker的端口2.3 测试docker run hello-world出现网址即为成功设置成开机自启systemctl enable docker2.4 协议问题 docker的push下载默认使用的是HTTPS协议 私人仓库默认使用的是HTTP在/etc/docker/下创建/daemon.json文件vim /etc/docker/daemon.json{“insecure-registries”:[“192.168.1.254:5000”]}参考3.1 容器的操作docker 可以查看docker客户端所有命令选项docker 指令 —help 可以查看指令的具体使用方法docker ps 查看启动的容器列表docker ps -a 查看启动/未启动的容器列表docker stop 容器名称/ID 关闭容器docker start 容器名称/ID 启动容器docker restart 容器名称/ID 重启容器docker top 容器名称/ID 查看容器进程列表docker rm -f 容器名称/ID 删除容器 容器停止之后才能删除docker logs -f 容器名称/ID 查看容器内部的标准输出3.2 关于镜像命令列表docker images 查看镜像列表docker history 镜像名 查看镜像制作历史docker pull 镜像名 下载镜像docker push 镜像名 上传镜像docker rmi -f 镜像名/ID 删除镜像 注意镜像正在使用是无法删除的docker search 镜像名 搜索镜像docker tag 镜像名 修改镜像名称和标签3.3 docker容器使用docker run -it —name ts-service -p 8787:8787 —env HOSTIP=192.168.1.1 -v /home/docker/ts/config/:/tsdir/config -v /home/tr_cache_root/:/tsdir/tr_cache_root —restart=on-failure:100 192.168.1.254:5000/ts:v1.4.2run -it 创建容器并运行—name 为容器指定一个名称-p 容器的8787端口映射到主机的8787端口—env 使用自定义变量-v 把指定的主机目录映射到容器的指定目录上去—restart=on-failure:100 随docker启动而自启容器 在100次失败内备注端口冲突netstat -auntlp | grep 端口号 或 lsof -i:端口号然后用 kill -9 加端口的PID 杀掉例子:netstat -auntlp | grep 8080tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 1157/javakill -9 1157如果端口被重要程序占用 容器修改主机映射的端口如果重启服务器容器挂掉检查端口有没有冲突检查容器是否有没有配置容器随docker启动而自启镜像不能下载检查镜像名是否正确 镜像仓库是否可以访问注意需要挂载的目录有没有准备容器需要的配置文件要挂载的目录必须要在主机中存在docker和selinux有冲突 会造成docker自启失败 把selinux设置成disabledvim /etc/selinux/configSELINUX=disabled
转载于:https://blog.51cto.com/13587748/2125959