docker 笔记:
1、开机自启动 ,如果创建时未指定 --restart=always ,可通过update 命令设置
docker update --restart=always xxx (https://blog.csdn.net/menghuanbeike/article/details/79261828)
2、gitblit容器启动后操作
进入docker容器 docker exec -it 容器id /bin/bash
启动gitblit a、cd /opt/gitblit/gitblit-1.8.0/ b、java -jar gitblit.jar &
3、Docker 容器镜像删除
a.停止所有的container,这样才能够删除其中的images:
docker stop $(docker ps -a -q)
如果想要删除所有container的话再加一个指令:
docker rm $(docker ps -a -q)
b.查看当前有些什么images
docker images
c.删除images,通过image的id来指定删除谁
docker rmi <image id>
想要删除untagged images,也就是那些id为<None>的image的话可以用
docker rmi $(docker images | grep "^<none>" | awk "{print $3}")
要删除全部image的话
docker rmi $(docker images -q)
3、docker从容器里面拷文件到宿主机或从宿主机拷文件到docker容器里面
a、从容器里面拷文件到宿主机?
答:在宿主机里面执行以下命令
docker cp 容器名:要拷贝的文件在容器里面的路径 要拷贝到宿主机的相应路径
示例: 假设容器名为testtomcat,要从容器里面拷贝的文件路为:/usr/local/tomcat/webapps/test/js/test.js, 现在要将test.js从容器里面拷到宿主机的/opt路径下面,那么命令应该怎么写呢?
答案:在宿主机上面执行命令
docker cp testtomcat:/usr/local/tomcat/webapps/test/js/test.js /opt
b、从宿主机拷文件到容器里面
答:在宿主机里面执行如下命令
docker cp 要拷贝的文件路径 容器名:要拷贝到容器里面对应的路径
示例:假设容器名为testtomcat,现在要将宿主机/opt/test.js文件拷贝到容器里面 的/usr/local/tomcat/webapps/test/js路径下面,那么命令该怎么写呢?
答案:在宿主机上面执行如下命令
docker cp /opt/test.js testtomcat:/usr/local/tomcat/webapps/test/js
c、在这里在记录一个问题,怎么看容器名称?
执行命令:docker ps,出现如图所示,其中NAMES就是容器名了。
4、docker升级到最新版本
a:首先执行docker -v , 查看当前版本
b:执行: rpm -qa | grep docker , 查看当前存在的docker旧版
有就执行apt remove XXXXX命令将其删除,没有就进行下一步
(我就没有旧版,直接安装新版本)
c:从源下载最新版本:curl -fsSL https://get.docker.com/ | sh
最后出现该画面表明更新完毕:
d:这时候重新启动docker 服务: systemctl restart docker
e:查看版本: docker version # docker -v
5、linux中查看各网卡ip
ip addr show
6、修改已经创建的docker容器的端口映射
对于已经创建的docker容器,如何修改映射的端口号呢?可以参考如下的操作步骤
0) docker container list –all
结果中的CONTAINER ID列为容器id
1) docker inspect <容器id> | grep Id
查看容器hash,<容器id>由步骤0)获得
2) docker stop <容器id>
停止运行中的容器
3) vim /var/lib/docker/containers/[容器hash]/hostconfig.json
编辑容器配置文件,<容器hash>由步骤1)获得
修改PortBindings参数配置,宿主机8001端口映射容器80端口示例:
“PortBindings”:{“80/tcp”:[{“HostIp”:””,”HostPort”:”8001″}]},”
4) systemctl restart docker
重新启动docker引擎
5)docker start <容器id>
重新启动docker容器
7、docker logs 查看实时日志
docker logs -f -t --since="2017-05-31" --tail=10 edu_web_1
--since : 此参数指定了输出日志开始日期,即只输出指定日期之后的日志。
-f : 查看实时日志
-t : 查看日志产生的日期
-tail=10 : 查看最后的10条日志。
edu_web_1 : 容器名称
1、开机自启动 ,如果创建时未指定 --restart=always ,可通过update 命令设置
docker update --restart=always xxx (https://blog.csdn.net/menghuanbeike/article/details/79261828)
2、gitblit容器启动后操作
进入docker容器 docker exec -it 容器id /bin/bash
启动gitblit a、cd /opt/gitblit/gitblit-1.8.0/ b、java -jar gitblit.jar &
3、Docker 容器镜像删除
a.停止所有的container,这样才能够删除其中的images:
docker stop $(docker ps -a -q)
如果想要删除所有container的话再加一个指令:
docker rm $(docker ps -a -q)
b.查看当前有些什么images
docker images
c.删除images,通过image的id来指定删除谁
docker rmi <image id>
想要删除untagged images,也就是那些id为<None>的image的话可以用
docker rmi $(docker images | grep "^<none>" | awk "{print $3}")
要删除全部image的话
docker rmi $(docker images -q)
3、docker从容器里面拷文件到宿主机或从宿主机拷文件到docker容器里面
a、从容器里面拷文件到宿主机?
答:在宿主机里面执行以下命令
docker cp 容器名:要拷贝的文件在容器里面的路径 要拷贝到宿主机的相应路径
示例: 假设容器名为testtomcat,要从容器里面拷贝的文件路为:/usr/local/tomcat/webapps/test/js/test.js, 现在要将test.js从容器里面拷到宿主机的/opt路径下面,那么命令应该怎么写呢?
答案:在宿主机上面执行命令
docker cp testtomcat:/usr/local/tomcat/webapps/test/js/test.js /opt
b、从宿主机拷文件到容器里面
答:在宿主机里面执行如下命令
docker cp 要拷贝的文件路径 容器名:要拷贝到容器里面对应的路径
示例:假设容器名为testtomcat,现在要将宿主机/opt/test.js文件拷贝到容器里面 的/usr/local/tomcat/webapps/test/js路径下面,那么命令该怎么写呢?
答案:在宿主机上面执行如下命令
docker cp /opt/test.js testtomcat:/usr/local/tomcat/webapps/test/js
c、在这里在记录一个问题,怎么看容器名称?
执行命令:docker ps,出现如图所示,其中NAMES就是容器名了。
4、docker升级到最新版本
a:首先执行docker -v , 查看当前版本
b:执行: rpm -qa | grep docker , 查看当前存在的docker旧版
有就执行apt remove XXXXX命令将其删除,没有就进行下一步
(我就没有旧版,直接安装新版本)
c:从源下载最新版本:curl -fsSL https://get.docker.com/ | sh
最后出现该画面表明更新完毕:
d:这时候重新启动docker 服务: systemctl restart docker
e:查看版本: docker version # docker -v
5、linux中查看各网卡ip
ip addr show
6、修改已经创建的docker容器的端口映射
对于已经创建的docker容器,如何修改映射的端口号呢?可以参考如下的操作步骤
0) docker container list –all
结果中的CONTAINER ID列为容器id
1) docker inspect <容器id> | grep Id
查看容器hash,<容器id>由步骤0)获得
2) docker stop <容器id>
停止运行中的容器
3) vim /var/lib/docker/containers/[容器hash]/hostconfig.json
编辑容器配置文件,<容器hash>由步骤1)获得
修改PortBindings参数配置,宿主机8001端口映射容器80端口示例:
“PortBindings”:{“80/tcp”:[{“HostIp”:””,”HostPort”:”8001″}]},”
4) systemctl restart docker
重新启动docker引擎
5)docker start <容器id>
重新启动docker容器
7、docker logs 查看实时日志
docker logs -f -t --since="2017-05-31" --tail=10 edu_web_1
--since : 此参数指定了输出日志开始日期,即只输出指定日期之后的日志。
-f : 查看实时日志
-t : 查看日志产生的日期
-tail=10 : 查看最后的10条日志。
edu_web_1 : 容器名称