代码拉取完成,页面将自动刷新
基础:docker version 、docker info 、docker-compose version
http://www.docker.org.cn/ Docker中文
```
<1. 创建并启动nginxTest实例,并在nginx运行
docker run -d -p 8090:80 --name nginxTest nginx
```
```
<2. 移除服务
docker rm -f nginxTest
```
```
<3.停止服务
docker stop nginxTest
```
```
<4.启动服务
docker start nginxTest
```
```
<5.查看正在运行的服务
docker ps
查看所有的服务
docker ps -a
```
```
<6.获取本地镜像:
docker images
```
```
<7.移除镜像
命令:docker rmi imagename/image ID
强制移除: docker rmi -f imagename/image ID
```
```
<8. 创建自己的镜像 --->通过Dockerfile 生成镜像
```
```
<9.获取信息的Image 如:centos 默认是最新的
docker pull centos
```
```
<10.进入Docker 镜像
@ @ 未创建镜像以前,则可使用: docker run -it 镜像 /bin/bash
@ @ 未创建镜像以前,则可使用: docker run -it 镜像 /bin/sh
xushijiandeiMac:~ xushijian$ docker exec -it 服务名称 /bin/bash
root@d5a08d34f2db:/#
xushijiandeiMac:~ xushijian$ docker exec -it centos:latest
[root@e94d4fd27cc7 /]#
```
```
<11. 查看Docker容器信息
docker inspect [containerName]
```
```
<12. Docker -> 刷新配置
针对某一服务:
docker exec -it strength_strength_1 curl -d "" "http://127.0.0.1:31002/refresh"
```
```
<13. 查看并调用内部服务:
1.先进入内部服务: internal 的服务中<返回值异常、请求方法名称(RequestMapping)、多检查几次>
docker exec -it 服务名 bin/bash
2.再调用接口(具体参数细化集合,多个参数)
如: curl -d "companyName=测试公司&companyId=100" "http://127.0.01:30301/internal//company/company/addMaterialCompany.json"
```
```
<21. Docker 日志维护(删除日志)
docker inspect [containerName] | grep LogPath | cut -d ':' -f 2 | cut -d ',' -f 1 | xargs echo | xargs truncate -s 0
如:(只能清除当前日志,如果包含多个日志文件,则其它文件不能删除)
docker inspect eureka_config_1 | grep LogPath | cut -d ':' -f 2 | cut -d ',' -f 1 | xargs echo | xargs truncate -s 0
```
shell 脚本删除 docker 日志文件 (==将eureka_config_1 修改成其它的容器名==)
```
#!/bin/bash
# set your containers base path
containersPath=/var/lib/docker/containers
# get container id by container name
containerName=eureka_config_1
# clear current log file
docker inspect ${containerName} | grep LogPath | cut -d ':' -f 2 | cut -d ',' -f 1 | xargs echo | xargs truncate -s 0
#get containerId
containerId=`docker inspect -f '{{.Id}}' ${containerName} 2> /dev/null`
if [ ! ${containerId} ];then
echo "container doesn't exist."
exit 2
fi
echo ${containerId}
#clear current log file
#cat /dev/null > ${containersPath}/${containerId}/${containerId}-json.log*
# delete old log file
rm -rf ${containersPath}/${containerId}/${containerId}-json.log.*
```
备注:
(1) 添加权限 chmod 777 clearDockerLog.sh
(2) xargs 用法 https://www.cnblogs.com/wangqiguo/p/6464234.html
(3) cut 用法 http://blog.csdn.net/u011003120/article/details/52190187
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。