查看docker启动时的命令参数以及更新参数

1.查看docker启动时的命令
rekcod可以将以下任何内容转换为docker run命令:

yum install npm -y && npm i -g rekcod    
docker ps -qa|rekcod
2.rekcod backendapp              #输入命令得到以下结果

[root@iZj6c7bzufsptcxdksnhdlZ ~]# rekcod backendapp

docker run --name backendapp --runtime runc -v /home/applications/backend/newbackendapp:/home/tomcat/webapps/ROOT -p 8888:8080/tcp --restart always -h 5a9ee8aaceae --expose 443/tcp --expose 8080/tcp -l org.label-schema.build-date='20181006' -l org.label-schema.license='GPLv2' -l org.label-schema.name='CentOS Base Image' -l org.label-schema.schema-version='1.0' -l org.label-schema.vendor='CentOS' -e 'PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/data/jdk7/bin' -e 'LC_ALL=zh_CN.utf8' -e 'JAVA_HOME=/data/jdk7' -e 'CLASSPATH=.:/data/jdk7/jre/lib/rt.jar:/data/jdk7/lib/tools.jar' -e 'TZ=Asia/Shanghai' -d bedc9e79a12b '/home/tomcat/bin/catalina.sh' 'run'
 

3.通过上面结果还原出原始命令为 

docker run -d --name=backendapp -v  /home/applications/backend/newbackendapp:/home/tomcat/webapps/ROOT -p 8888:8080 --restart=always jinbian/c7-jdk7-t7:0.3

4.更新docker启动时参数

docker container update --restart=always nginx_ht

5.docker安装反查docker启动时命令参数

6.runlike
推荐使用上面第一种方式,那个一目了然些

# 常规语法
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock assaflavie/runlike YOUR-CONTAINER
# 使用别名运行它,例如,将其保存在~/.profile或中~/.bashrc
alias runlike="docker run --rm -v /var/run/docker.sock:/var/run/docker.sock assaflavie/runlike"
runlike YOUR-CONTAINER #以本地命令运行

[root@iZj6c7bzufsptcxdksnhdlZ ~]# runlike backendapp
docker run --name=backendapp --hostname=5a9ee8aaceae --mac-address=02:42:ac:11:00:02 --env=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/data/jdk7/bin 
--env=LC_ALL=zh_CN.utf8 --env=JAVA_HOME=/data/jdk7 --env=CLASSPATH=.:/data/jdk7/jre/lib/rt.jar:/data/jdk7/lib/tools.jar --env=TZ=Asia/Shanghai 
--volume=/home/applications/backend/newbackendapp:/home/tomcat/webapps/ROOT --expose=443 -p 8888:8080 --restart=always --label='org.label-schema.license=GPLv2' 
--label='org.label-schema.name=CentOS Base Image' --label='org.label-schema.build-date=20181006' --label='org.label-schema.schema-version=1.0' 
--label='org.label-schema.vendor=CentOS' --runtime=runc --detach=true bedc9e79a12b /home/tomcat/bin/catalina.sh run
 

docker cp -L /usr/share/zoneinfo/Asia/Shanghai rabbitmq-3.7-management:/etc/localtime

正在运行的容器,时间如何同步?

有些同学看到这里,不禁会问,如果是一个正在运行的docker容器,如何同步时间呢?

这种方式同样适用于,构造镜像完成后,时间不同步的状况

在宿主机执行命令如下:

 docker cp -L /usr/share/zoneinfo/Asia/Shanghai  【容器名】:/etc/localtime

docker 镜像仓库镜像查看和版本获取

curl http://127.0.0.1:5000/v2/_catalog
curl http://127.0.0.1:5000/v2/pro-mall_swarm-portal/tags/list

docker常用命令

docker 镜像上传
docker build -t docker.io/jinbian/centos7-jdk7-resin3.2 .  #制作镜像
docker run -d -it --name=ceshi -p 9090:8080 03dd580e06f1   #启动镜像
docker logs ceshi                                          #查看日志
docker logs -f -t --tail 100 logstash                      #查看容器最后十行日志
docker exec -it ceshi bash                                 #进入容器
docker system df -v                                        #查看镜像和容器占用磁盘大小
docker exec -it shard1_3 mongo --port 27018 bash
docker start $(docker ps -qa)                              #这个命令可以用来服务器关机以后docker启动旧服务
docker rmi $(docker images -qa)                            #删除镜像
docker login: jinbian #登入私人账号
passwd: liujia192316
docker commit 58c5c56789cd docker.io/jinbian/centos7-jdk7-resin3-paygate:1.3  将修改后的容积打包成新的镜像

CMD ["/home/tomcat/bin/catalina.sh","run"]          #制作镜像不知道启动方式可以看官方仓库镜像的启动方式
docker tag docker.io/noyes21/huanyin-http-c6-r3-j7:1.0 docker.io/jinbian/huanyin-http-c6-r3-j7:1.0 #重新打上标签,改成账号的用户名
docker tag f07b9830ea9b docker.io/jinbian/centos6-http-c6-r3-j7:1.0 

docker push docker.io/jinbian/centos6-http-c6-r3-j7:1.0  #上传到私人仓库只能两根划线,要有自己的用户名
docker push docker.io/jinbian/centos7-jdk7-tomcat7:1.0   #上传私人仓库钱不需要改成自己的用户名,斜划线只能两根


docker 日志拷贝
docker cp 3ec8d66e7a4f:/home/logs/lobbyweb_bxyl.log ./  拷贝本地
COPY jdkkk b28041776acd:/data/jdk7/jre/lib/security     拷贝docker
docker logs -f -t --tail 1000 3ec8d66e7a4f > logs  #导出日志最后输出的行
docker logs --tail 5000 b465122264c3 > logs
docker image rm -f $(docker images -qa)   删除所有镜像
docker rm -f $(docker ps -qa)             删除所有容器
docker run -it -v /root/html:/usr/share/nginx/html -p 8080:80 --name=nginx -d nginx  #-v挂载磁盘
docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名	
sed -i "s/oldString/newString/g"  `grep oldString -rl /path`  #-r(目录)  -l 列出文件内容符合指定的范本样式的文件名称,过滤掉内容
sed -i "s/oss_room_v2/oss_bi_all_room/g"  `grep oss_room_v2 -rl /home/hadoop/nisj/automationDemand/idfaQuery`
sed -i “s/原字符串/新字符串/g”  `grep  -rl 原字符串 所在目录`
该命令主要是为了详细展示查看运行时的command参数
docker ps -a --no-trunc | grep container_name   # 通过docker --no-trunc参数来详细展示容器运行命令

docker inspect container_name #输出容器信息
docker history container_name #输出镜像构建信息

解决docker占用磁盘过大,docker systemctl df -v 查看镜像和容器磁盘占用都不高,最好查到是/var/lib/docker/containers/container_id/container-json.log过大,临时解决方案清空日志,下次还是会过大,cat /dev/null >json.log 清空这个文件的内容,释放磁盘空间; 需要重启容器,才能继续记录日志。

#添加max-size参数来限制文件大小
docker run -it --log-opt max-size=10m --log-opt max-file=3 alpine ash   #最大不超过10m,不超过三个日志文件

cat /dev/null > 9cb7650c139325cacf1973151220139cf273c9458ba3e95f51eca0ec8cf5a395-json.log  

 解决日志过大全局永久配置

vi /etc/docker/daemon.json
{
  "log-driver": "json-file",
  "log-opt": {
      "max-size": "10m",
      "max-file": "3"
  }


容器运行时 每个日志文件最大为10M ,每个容器 最多可以保存3份日志文件

批量删除Docker中已经停止的容器,和未打标签的镜像

#显示所有的容器,过滤出Exited状态的容器,取出这些容器的ID,

sudo docker ps -a|grep Exited|awk '{print $1}'

#查询所有的容器,过滤出Exited状态的容器,列出容器ID,删除这些容器

sudo docker rm `docker ps -a|grep Exited|awk '{print $1}'`

删除未打标签的镜像

docker images | grep '<none>' |awk '{print $3}'

k8s镜像管理命令

查出k8s中pod在使用的镜像

 kubectl get -o wide deploy -n yxyw-uat |awk '{print $7}'

查出镜像地址,勾选正则开头配上镜像推送命令

gem-acr-p-a01-registry-vpc.cn-shenzhen.cr.aliyuncs.com/osale/gyx-admin:yxyw-pre-2023-06-05-11-18-10

将pod在使用的镜像推送到镜像仓库

ctr -n k8s.io i push -u lj@gemdale-ali:passwd gem-acr-p-a01-registry-vpc.cn-shenzhen.cr.aliyuncs.com/osale/gyx-admin:yxyw-pre-2023-06-05-11-18-10

docker run 命令30个常用参数详解

1. `-d`:以后台模式(detached mode)运行容器,即在容器启动后将其放入后台运行。
2. `-it`:以交互模式(interactive mode)运行容器,即启动一个新的终端会话并连接到正在运行的容器。
3. `--name`:为容器指定一个名称。
4. `-p`:将容器的端口映射到主机的端口。
5. `-v`:将主机的目录或文件挂载到容器中。
6. `--network`:指定容器使用的网络类型。
7. `--env`:设置容器的环境变量。
8. `--rm`:容器退出时自动删除容器。这在临时容器中非常有用。
9. `--link`:将容器连接到另一个容器。
10. `--privileged`:以特权模式运行容器,具有访问主机系统的权限。
11. `--volume-driver`:指定容器数据卷的驱动程序。
12. `--ulimit`:设置容器的资源限制。
13. `--detach-keys`:指定分离容器的键盘序列。
14. `--env-file`:从文件中读取环境变量。
15. `--hostname`:设置容器的主机名。
16. `--dns`:设置容器使用的 DNS 服务器。
17. `--shm-size`:设置容器的共享内存大小。
18. `--link`:连接到其他容器。
19. `--restart`:设置容器的重启策略。
20. `--cpu-shares`:设置容器的 CPU 份额。
21. `--memory`:设置容器的内存限制。
22. `--cap-add` 和 `--cap-drop`:添加或删除容器的特权。
23. `--rm`:容器退出时自动删除容器。这在临时容器中非常有用。
24. `--link`:将容器连接到另一个容器。
25. `--privileged`:以特权模式运行容器,具有访问主机系统的权限。
26. `--volume-driver`:指定容器数据卷的驱动程序。
27. `--ulimit`:设置容器的资源限制。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
查看Docker启动命令,可以使用以下方法: 1. 使用命令`docker ps -a`来显示当前Docker下的所有容器。这将列出所有正在运行的容器以及已停止的容器。\[1\] 2. 如果想要查看某个特定容器的启动命令,可以使用命令`docker inspect <容器ID>`。这将显示有关该容器的详细信息,包括启动命令。\[2\] 希望这些信息对您有所帮助! #### 引用[.reference_title] - *1* [【docker基础操作命令】(一)启动命令和镜像命令](https://blog.csdn.net/weixin_43598687/article/details/124637938)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [查看正在运行docker容器的启动命令](https://blog.csdn.net/weixin_43145427/article/details/123939000)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [查看docker启动时命令参数以及更新参数](https://blog.csdn.net/jialiu111111/article/details/119722225)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值