1 Star 0 Fork 0

世建/DockerLearn

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
Docker 常用命令 3.28 KB
一键复制 编辑 原始数据 按行查看 历史
世建 提交于 2018-07-02 11:34 . 添加基础镜像
基础: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
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/xushj/dockerlearn.git
git@gitee.com:xushj/dockerlearn.git
xushj
dockerlearn
DockerLearn
master

搜索帮助