Centos 配置开机启动脚本启动 docker 容器 Intro 我们的 Centos 服务器上部署了好多个 docker 容器,因故重启的时候就会导致还得手动去手动重启这些 docker 容器,为什么不写个脚本自动重启呢,于是就有了这篇文章. 批量启动 Docker 容器 之前我们有提到过关于 docker 的一些骚操作 ,可以直接使用 docker start $(docker ps -aq) # 启动所有容器 docker start $(docker ps -aq -f status=…
1.遇到的问题 在分布式项目部署的过程中,经常要求服务器重启之后,应用(包括数据库)能够自动恢复使用.虽然使用docker update --restart=always containerid能够让容器自动随docker启动,但是并不能保证是在数据库启动之后启动,如果数据库未启动,那么将导致应用启动失败;网上还有一种解决方法是通过docker-compose容器编排来控制启动顺序,这个博主研究的比较少. 2.解决思路 使用Shell脚本来控制,思路大致如下 探测数据库端口来检验数据库是否启动成…
1.新建脚本文件 我这里是为了设置开机自动设置ipv6隧道,所以命名为ipv6tunnel.sh ifconfig sit0 up ifconfig sit0 inet6 tunnel ::66.220.18.42 ifconfig sit1 up ::c:8a7::/ route -A inet6 add ::/ dev sit1 2.给脚本添加执行权限 chmod +x ipv6tunnel.sh 3.添加开机启动 在/etc/rc.d/rc.local中添加刚刚的脚本(注意是全路径的).在…
今天在我同步mongo数据库的时候,服务器的磁盘突然就被占满了导致同步中断,mongo容器也停止工作了.然后就想要弄一个能够定时清理同步过程中留存在docker容器中的mongo数据的脚本.话不多说,脚本如下#!/bin/bash# 获取容器的idcid=`docker ps | grep mongo | awk '{print $1}'`# 定义日志文件log_file=/目录/delete_mongo_dump_file.log(需要替换成自己的目录)# 格式化日期today=$(date…
docker run -d -p : --name mysql -e MYSQL_ROOT_PASSWORD= mysql:…
ssh阿里云计算落地ssh username@ip uname -a 查看linux内核版本号,由于Docker推荐使用3.8内核以上,设版本号低可能会不稳定,因此须要选用yum方式升级内核. 导入 KEY ,安装软件源.在 YUM 的 ELRepo 源中,有mainline(3.13.1).long-term(3.10.28)这 2 个内核版本号,考虑到 long-term 更稳定.会长期更新,所以选择这个版本号. 点击查看方法来源 导入public key:rpm --import http…
/etc/rc.d/init.d/目录下的内容如下:这些常用的服务器都是System v的服务,要控制System V 的服务,我们可以使用以下命令 #/etc/rc.d/init.d/script   {start|stop|restart|reload|condrestart|status} stop:停止这个服务. restart:先停止,再启动,也就是重新启动的意思. reload:重新加载设定档,这个参数只有在服务已经启动的状况下才能使用. condrestart:有条件的重新启动,这…
#!/bin/bash # description: Tomcat7 Start Stop Restart # processname: tomcat7 # chkconfig: JAVA_HOME=/usr/.0_17 export JAVA_HOME PATH=$JAVA_HOME/bin:$PATH export PATH #CATALINA_HOME=/u01/tomcat case $ in start) sh $CATALINA_HOME/bin/startup.sh ;; stop…
以前一直搞的centos配置开机启动脚本,但是相同方法用在ubuntu系统上就不管用了,非常伤脑筋. 非常感谢  https://www.linuxidc.com/Linux/2017-09/147178.htm  http://www.linuxdiyf.com/linux/26896.html  这两篇文章. 我第一次也是尝试修改rc.local这个文件,但是压根不管用. 然后尝试第二种方法,成功了,再一次非常感谢以上两篇文件分享的内容. 1. 创建一个shell脚本如下,以下注释部分必须存…
原因: 由于错误的配置导致原来可以启动的docker容器不能启动了.相信很多人的做法是删除容器重建一个,这样也是可以的,但是你的配置和插件就得重新安装,非常麻烦.最小的代价当然是修改原来的配置让他能启动了.docker容器起不来了怎么改配置? 解决方案: 由于我开启的容器是elasticsearch-5.6.4,安装了ik插件,修改配置重启时,起不来了,瘫痪了.正确的解决姿势是将容器的配置cp出来(到宿主机),修改正确然后cp回去,启动就行了. 我的容器:es-node-1,容器配置路径:/us…
centOS 配置开机自启动两种方式: 1.vi /etc/rc.d/rc.local 在此文件中加入启动的脚本 2.chkconfig 增加自己的脚本  --add --list --del 步骤: 1.自己定义脚本格式如下: 必须添加的 #!/bin/sh #chkconfig: 2345 80 80 #description: auto start web server 第一句:必须的 声明sh 第二句:必须的 2345 表示linux 有 0-6种状态 在2345下启动 80:表示启动顺…
网上大多介绍的catalina.sh启动,因为docker容器中,无法直接启动startup.sh. 解决方法: 编辑catalina.sh,找到 >> "$CATALINA_OUT" 2>&1 "&" 当前tomcat版本为8.0.32,行号分别为398.407. 将"&"删除,结果为 >> "$CATALINA_OUT" 2>&1 重定向日志之后,多了一个…
问题 一测试环境,配置及应用如下: [Centos ~]# rpm -q centos-release centos-release-7-6.1810.2.el7.centos.x86_64 应用: Docker Docker-Mysql Docker-Mongo dotnetcore-webapi RabbitMq Redis Nginx 年后上班发现dotnetcore-api 和docker应用无法使用. 解决 查找Docker 容器: docker ps -a 返回空. 创建Mysql容…
一.创建控制台脚本 二.创建认证文件 通过上面创建的脚本进行启动的时候,会因为密码问题导致起不来,因为在startWebLogic.sh文件中,没有配置用户名和密码.而且通过上面创建的脚本,启动的时候是在后台执行,所以,启动的时候不会让你输入用户名和密码.但是,虽然启动失败了,依旧会有AdminServer目录,只要创建了认证文件,即可跳过认证,成功启动. 创建完成之后,再启动weblogic控制台脚本startconsole.sh即可成功启动 三.创建服务器 创建新的服务器需要在控制台中,先新…
Centos7 启动脚本 启动脚本.如果进程已存在,输出错误信息后退出: #! /bin/bash PIDS=`ps -ef | grep '/usr/bin/node ./index.js' | grep '?' | awk '{print $2}'` if [ -n "$PIDS" ]; then echo "ERROR: The index.js (user async service) already started!" echo "PID: $P…
一:为什么需要Docker容器? 1.引入 1.1麻烦的环境部署 1.在软件开发中,最麻烦的事情之一就是环境配置.在正常情况下,如果要保证程序能运行,我们需要设置好操作系统,以及各种库和组件的安装. 2.举例来说,要运行一个Python程序,计算机必须要有 Python 引擎,还需要安装好程序的各种依赖,甚至还要配置特定的环境变量.假设你有两个程序都需要部署在同一个服务器上,一个需要软件是基于Python2.0,一个是Python3.0,那么在部署上就很容易造成混乱.因为不同版本的Python模…
1,Docker简介 1.1 Docker是什么? Docker官网: https://www.docker.com/ Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源.Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低.Docker 从 17.03 版本之后…
案例说明 运行 3 个容器,实现对网站的监控. 三个容器的说明: 容器 web: 创建自 nginx 映像,使用 80 端口,运行于后台,实现 web 服务. 容器 mailer: 该容器中运行一个 mailer 程序,运行于后台,当接收到事件后会向管理员发送邮件. 容器 agent: 该容器运行一个 watcher 程序,以交互模式运行,用于不断地监测 web 服务的运行情况,一旦出现故障会立即向 mailer 容器发送消息. 创建容器 创建并运行 web 容器 $ docker run --…
一. docker 容器 1.docker是什么? .linux下容器技术有很多,docker是做的最杰出的一款 .docker能够支撑阿里双十一,京东618的业务,说明,性能,安全性不得差 .docker容器很容易被大规模创建 .python为什么火?因为运维领域,golang则是因为docker .docker能够解决什么问题?解决环境配置问题 .每一个docker容器,单独运行一个应用程序 .docker如同在os的进程上,披着一个马甲,其实还是运行在一个单独linux系统上 .让开发人员…
一文了解Docker容器技术的操作 前言一.Docker是什么二.Docker的安装及测试Docker的安装Docker的Hello world测试三.Docker的常见操作镜像的基本操作容器的基本操作镜像.容器的导入和导出四.关于DockerFile总结 前言 相信点进这篇文章的Coder,不管是在各大技术论坛上.技术交流群,亦或招聘网上,应该都有见到过Doker容器技术的面孔,随着社会节奏的加快以及迫于生活的压力,在计算机技术日新月异的今天,真正能够沉下心来学习一门技术的时间真的不多.趁着这…
1. 测试环境 75机(10.11.150.75):Red Hat Enterprise Linux Server 7.0,无外网访问权限,已安装Docker Server 74机(10.11.150.74):Red Hat Enterprise Linux Server 7.0,无外网访问权限,已安装Docker Server 73机(10.11.150.73):Red Hat Enterprise Linux Server 7.0,无外网访问权限,已安装Docker Server 183机:…
https://linux.cn/article-6103-1.html Kali Linux 是一个对于安全测试人员和白帽的一个知名操作系统.它带有大量安全相关的程序,这让它很容易用于渗透测试.最近,Kali Linux 2.0 发布了,它被认为是这个操作系统最重要的一次发布.另一方面,Docker 技术由于它的可扩展性和易用性让它变得很流行.Dokcer 让你非常容易地将你的程序带给你的用户.好消息是你可以通过 Docker 运行Kali Linux 了,让我们看看该怎么做 :) 在 Doc…
文章链接: https://blog.csdn.net/hanchaobiao/article/details/84069299 参考链接: https://blog.csdn.net/github_33934628/article/details/80919646   https://blog.csdn.net/Wendy019900107/article/details/81985837 一.首先假设你已启动了一个docker容器,并在启动时将容器的22端口映射到宿主机的10022端口启动示…
目录 一.运行容器 1.运行第一个容器 2.让容器长期运行 二.进入容器 1.attach 2.exec 3.attach VS exec 4.容器内部都在干些什么 三.停止/启动/重启容器 四.暂停/恢复容器 五.深入容器 六.删除容器 一.运行容器 1.运行第一个容器 现在,让我们尝试启动第一个 Docker 容器.我们可以使用docker run命令创建容器,docker run命令提供了 Docker 容器的创建到启动的功能. root@ubuntu:~# docker run -ti…
本篇文章介绍的内容是关于在Linux机器上创建,列出和删除docker容器,下面我们来看具体的内容. 1.启动Docker容器 使用下面的命令启动新的Docker容器.这将启动一个新的容器,并为你提供使用/bin/bash shell访问该容器的权限. # docker run [OPTIONS] <IMAGE NAME> [COMMAND] [ARG...] 例如,下面的命令将使用名为“ubuntu”的图像创建新的docker容器.要列出所有可用图像,请使用docker images命令 #…
1. 问题背景 在一次新版本功能开发完毕,配合测试的过程中,测试反馈某个XxlJob定时任务一直执行失败,在分析了日志之后,找到了报错的原因: Packet for query is too large (7251422 > 4194304). You can change this value 是因为在程序中做了批量INSERT,而一次插入的数据量太大,超过了MySQL服务器的配置,导致插入失败.所以,我们只需要将这个配置改大一点就行. 2. 解决方案确定 经过搜索,发现决定单次插入数据量的配…
1. Docker容器的重启策略 Docker容器的重启策略是面向生产环境的一个启动策略,在开发过程中可以忽略该策略. Docker容器的重启都是由Docker守护进程完成的,因此与守护进程息息相关. Docker容器的重启策略如下: no,默认策略,在容器退出时不重启容器 on-failure,在容器非正常退出时(退出状态非0),才会重启容器 on-failure:3,在容器非正常退出时重启容器,最多重启3次 always,在容器退出时总是重启容器 unless-stopped,在容器退出时总…
目录 一.单主机 Docker 网络通信 1.1.host 模式 1.2 Bridge 模式 1.3 Container 模式 1.4.None 模式 二.跨主机 Docker 网络通信分类 2.1 通信方案 2.2.容器网络规范 2.3.网络通信实现方案 2.4.Kubernetes 网络模型 三.跨主机 Docker 网络 3.1 Flannel 网络方案 3.2.Calico 网络方案 3.3.Canal 网络方案 3.4.Docker overlay 网络方案 3.5.Docker ma…
docker可以说给我们的部署带来极大的方便和可逢凶化吉性!(懂的同学自然懂) 在初步了解之后,我们就能简单使用docker了. 刚开始玩docker时,可以基于系统级别的镜像做定制,比如基于  centos 镜像使用docker: docker pull centos: # 把镜像拉下来 docker run -it centos: # 创建一个容器即可运行 你可以在拉下来的容器里安装任何需要的应用(必要的):然后,一切都看起来很美好! 但是,这时,我们最担心一个问题,那就是docker挂了怎…
一.Docker简介 Docker 提供了一个可以运行你的应用程序的封套(envelope),或者说容器,是轻量级的“容器引擎+映像仓库”,在LXC(linux轻量级容器)的基础上构建,可以运行任何应用程序. Docker 扩展了 Linux 容器(Linux Containers),或着说 LXC,通过一个高层次的 API 为进程单独提供了一个轻量级的虚拟环境.Docker 利用了 LXC, cgroups 和 Linux 自己的内核.和传统的虚拟机不同的是,一个 Docker 容器并不包含一…