#docker安装(只能centos6.5以上)
http://blog.csdn.net/weiguang1017/article/details/46362639 (升级方式)
yum install -y docker-io
(如果提示 "No package docker-io available"说明不能连接epel库,则需要执行 $ sudo yum install http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm后再安装docker-io)
#启动docker
/etc/init.d/docker start
#centos启动docker
service docker start
#centos检查是否启动
chkconfig docker on
#搜索镜像
docker search centos
#下载镜像
docker pull centos
#查看当前系统有什么镜像
docker images
#删除镜像
docker rmi 【镜像id】
#启动容器
docker run centos /bin/echo 'hello world'
#查看容器的运行状态
docker ps -a
#启动容器 -name起个名字 -i保持输入终端打开 -t开一个伪终端绑定到标准输入上 运行命令/bin/bash
docker rum -name mydocker -it centos /bin/bash
#centos启动docker镜像 -i保持输入终端打开 -t开一个伪终端绑定到标准输入上
docker run --name docker-centos -it centos /bin/bash
docker run --name spring-boot-docker-demo -p 8081:8080 -d 192.168.116.240/demo/spring-boot-docker-demo:spring-boot-docker
--name 启动的容器的名字,唯一即可
-p 把服务器的8081端口映射到容器的8080端口
-d 后台启动
192.168.116.240/demo/spring-boot-docker-demo:spring-boot-docker image:tag
#docker修改配置文件之后重启
vi /usr/lib/systemd/system/docker.service
systemctl daemon-reload
systemctl restart docker.service
#退出容器
exit
#启动之前已经停止的过的容器
docker start [容器id]
#停止容器
docker stop [容器id]
#进入一个已经运行的容器
方法1
docker attach [容器id]
方法2(用这种办法进去在用exit退出不会让容器关闭)
docker inspect --format "{{.State.Pid}}" docker-centos #查看容器的pid
nsenter --target 104130 --mount --uts --ipc --net --pid #根据查看到的pid进入到容器里面
104130是上面查出来的pid
编写linux脚本./indocker.sh
脚本内容如下
CNAME=$1
CPID=$(docker inspect --format "{{.State.Pid}}" $CNAME )
nsenter --target "$CPID" --mount --uts --ipc --net --pid
./indocker.sh [id或者名字]
推送镜像到harbor
1 先打tag
docker tag openjdk:8-jdk-alpine 192.168.116.239/demo/openjdk:8-jdk-alpine 【image:tag】
2.推送到仓库
docker push 192.168.116.239/demo/openjdk:8-jdk-alpine
镜像导出和导入
docker export cbe3cb7799ed > update.tar cbe3cb7799ed 容器ID不是镜像ID
docker import - spring-boot-docker:1.0.2 < update.tar
查看docker日志
docker logs -f -t --tail 200 5ee2ceb6a215
docker-composem命令
docker-compose up -d ###后台启动,如果容器不存在根据镜像自动创建
docker-compose down -v ###停止容器并删除容器
docker-compose start ###启动容器,容器不存在就无法启动,不会自动创建镜像
docker-compose stop ###停止容器
docker-compose logs ###查看日志(harbor日志存放地址 /var/logs/harbor)
删除停止运行的容器
docker rm $(sudo docker ps -a -q)