最近使用docker比较频繁,所以也难免碰到一些坑,在这里记录一下,给自己写个笔记

1.docker 1.13.0版本不支持docker stack deploy -c 多个 -c的yml文件合并

如果发现多个-c不起作用,可以看一下docker的版本是否太久,1.18.0之后是可以的

2.docker stack deploy 后 stack rm stackName后再次启动可能会提示network已经存在,

有时docker 不会删除原有network

3.docker stack deploy 启动时有时会提示network不存在,启动失败,

需要再次执行docker stack deploy命令

4.提示invaild mount config error等,多半是因为在docker-compose.yml文件中包含volumes ,且里面存在从未知路径挂载的命令

可以在yml文件的底部用volume挂载,而不是在service中使用未知路径,

5. fail to gateway ..ip is in use,一般是network中存在原有ip地址的network未删掉

我们可以使用 docker network prune 删除未执行的network,或者直接删除对应的network

6. docker-compose up时 nginx提示 Error starting userland proxy: listen tcp 0.0.0.0:8001: bind: address already in use,并且network没有8001,

因为nginx出现异常,需要 删掉nginx 然后重新启动

Instead of

sudo systemctl restart nginx

I had to use:

sudo pkill -f nginx
sudo systemctl start nginx

---------------- 命令注释----------------------

重要! stack rm 后 需要执行stack docker network prune 删除未使用的network
多次使用 stack 命令 (stack rm + stack stack deploy ) 重启服务时 , stack rm 后 network 可能会未完全删除,下次使用 stack deploy -c xxx.yml 启动时会发现部分服务报错,提示"failed to allocate gateway (10.0.0.1): Address already in use" 这时需要执行stack docker network prune 删除未使用的network.

docker swarm 命令

(Manager节点执行)初始化集群docker swarm init

(Manager节点执行) 查看加入worker节点时,需要在worker节点执行的命令docker swarm join-token worker

docker stack 命令

启用集群式服务.
(在docker-compose.yml目录下执行) sudo docker stack deploy -c docker-compose.yml -c docker-compose.override.yml BI
** 使用docker stack deploy -c docker-compose.yml时yml文件中的build指令无效,需要先执行 docker-compose build 命令! **

移除BI 服务集群 docker stack rm BI
当删除集群时,yml中build的镜像需要手动删除

docker service 服务命令

查看运行中的服务列表 docker service ls

查看某个服务(BI_app-download)的运行状态 docker service ps BI_app-download

查看某个服务(BI_app-download)的日志记录 docker service logs BI_app-download

创建所需镜像
(在docker-compose.yml目录下执行) docker-compose build

docker-compose.yml中含有deploy属性(stack deploy 启动需要)时,docker会提示警告,但不影响镜像生成.

生成的镜像名称为docker_foldername格式
如: build app-download 文件夹下的 Dockerfile文件时,生成的镜像名称为 "docker_app-download"

删除镜像 docker rmi imageid
如果修改重新生成镜像,需要删除集群-->删除镜像-->修改更新项-->docker-compose build-->docker stack deploy

docker load image 时提示空间不够

systemctl/systemd/docker.service 下修改  -grph =/var挂载新的目录,  然后分别重启服务 system restart  daemon-reload  ,restart docker service

docker file 使用dockerfile 配置容器时区

RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

Docker发布程序那些事的更多相关文章

  1. NetCore 2.0 应用程序在centos 7上通过docker发布

    一  安装netcore 2.0 SDK 在centos 上面安装netcore 2.0 与window上面是不太一样的,注意,linux是不支持同时安装两个版本的.netcore SDK的,由于我之 ...

  2. docker发布.net core程序的坑

    docker发布遇到的两个问题 1:Could not resolve CoreCLR path. For more details, enable tracing by setting COREHO ...

  3. .NET Core使用skiasharp文字头像生成方案(基于docker发布)

    一.问题背景 目前.NET Core下面针对于图像处理的库微软并没有集成,在.NET FrameWork下我们已经习惯使用System.Drawing类库做简单的图像处理,到了.NET Core下一脸 ...

  4. Docker 发布 Abp net core web 服务

    Docker 发布 Abp net core web 服务 准备工作:Abp 项目,这个是模板下载地址 https://aspnetboilerplate.com/Templates (本例使用的是S ...

  5. Angular入门到精通系列教程(14)- Angular 编译打包 & Docker发布

    目录 1. 概要 2. 编译打包 2.1. 基本打包命令 2.2. 打包部署到二级目录 3. Angular站点的发布 3.1. web服务器发布 3.2. 使用docker发布 4. 总结 环境: ...

  6. 【WinForm】使用NSIS发布程序

    简介 NSIS(Nullsoft Scriptable Install System)是一个开源的 Windows 系统下安装程序制作程序.它提供了安装.卸载.系统设置.文件解压缩等功能 使用 以下是 ...

  7. Qt for Mac:发布程序(widgets和quick2)

    当你用Qt开发好程序后,是不是会很期待将你的成果分享给你的小伙伴 可是Qt的库并不是OS X标配的,所以我们要自己去复制库到app包里,才可以让app在其他未安装Qt的电脑上运行. 比较幸运的是,Qt ...

  8. WPF发布程序后未授予信任的解决办法

    WPF发布程序后未授予信任的解决办法 基于浏览器的WPF应用程序由于需要比较高的操作权限,所以在项目的安全性属性中选择了“这是完全可信的应用程序”选项.可是,在发布部署后,在其他电脑上打开xbap文件 ...

  9. 如何使用VC++6.0发布程序(即release版本程序)

    大家都知道VC编译器默认生成debug版本的程序,但是debug版本程序无法运行在没有安装VC的电脑上, 这就要就我们生成release版本的程序,因为release版本在未安装VC的电脑上也能运行( ...

随机推荐

  1. Tensorflow 大规模数据集训练方法

    本文转自:Tensorflow]超大规模数据集解决方案:通过线程来预取 原文地址:https://blog.csdn.net/mao_xiao_feng/article/details/7399178 ...

  2. BZOJ4269再见Xor——高斯消元解线性基

    题目描述 给定N个数,你可以在这些数中任意选一些数出来,每个数可以选任意多次,试求出你能选出的数的异或和的最大值和严格次大值. 输入 第一行一个正整数N. 接下来一行N个非负整数. 输出 一行,包含两 ...

  3. P4783 【模板】矩阵求逆

    原题链接 https://www.luogu.org/problemnew/show/P4783 一道模板题,更重要的省选难度..... 题目要求的是一个n*n的逆矩阵,还要对大数取膜. 普通高中生: ...

  4. POJChallengeRound2 Guideposts 【单位根反演】【快速幂】

    题目分析: 这题的目标是求$$ \sum_{i \in [0,n),k \mid i} \binom{n}{i}G^i $$ 这个形式很像单位根反演. 单位根反演一般用于求:$ \sum_{i \in ...

  5. GWAS文献解读:The stability of educational achievement across school years is largely explained by genetic factors

    方法 从NPD(英国数据库,收集有关学生在学年中学业成绩的数据)和TEDS(英国国家课程指南报告成绩数据库,由国家教育研究基金会和资格与课程管理局制定标准化核心学术课程)数据库获得双胞胎的学业成绩数据 ...

  6. 计算机基础理论知识梳理篇(一):数据类型长度、内存页、IPC

    字长与数据类型长度 字长指CPU在同一时间能够处理二进制数据的位数,是由其外接数据总线(地址总线决定了CPU的寻址空间,如16位微型机的地址总线为20位,其可寻址空间为220 = 1MB)的条数决定的 ...

  7. Kubernetes之DaemonSet控制器

    DaemonSet 简介 DaemonSet 确保全部(或者一些)Node 上运行一个 Pod 的副本.当有 Node 加入集群时,也会为他们新增一个 Pod .当有 Node 从集群移除时,这些 P ...

  8. 17、 利用扇贝网:https://www.shanbay.com/, 做个测单词的小工具。

    先说下,我可以说完全没有看题目要求,我只看了下扇贝网的单词测试工具就开始编码了,写出来的代码尽可能的模仿了网站上的效果. 因为把问题搞复杂了,在这个练习上耽误了很长时间,最后都不想写了,所以代码有些混 ...

  9. [数学笔记Mathematical Notes]1-调和级数发散的一个简单证明

    定理. 调和级数 $\dps{\vsm{n}\frac{1}{n}}$ 是发散的. 证明. 设 $$\bex a_n=\sum_{k=1}^n\frac{1}{k}, \eex$$ 则 $a_n$ 递 ...

  10. [再寄小读者之数学篇](2014-06-20 求极限-H\"older 不等式的应用)

    设非负严格增加函数 $f$ 在区间 $[a,b]$ 上连续, 有积分中值定理, 对于每个 $p>0$ 存在唯一的 $x_p\in (a,b)$, 使 $$\bex f^p(x_p)=\cfrac ...