使用内网的Docker Image启动AcmeAir应用

时间:2022-04-16 08:52:04

1.修改docker启动选项,添加信赖私有仓库

为了拉取docker.oneapm.me仓库里的镜像,我们需要将它添加为信赖仓库,方式是在启动选项中添加 --insecure-registry docker.oneapm.me

A. Ubuntu环境

在Ubuntu 14环境中添加

修改Docker配置文件
vi /etc/default/docker
增加以下一行
DOCKER_OPTS="$DOCKER_OPTS --insecure-registry=docker.oneapm.me"
重启Docker
systemctl daemon-reload
sudo service docker restart

在Ubuntu 15环境中添加

修改Docker配置文件
vi /lib/systemd/system/docker.service
修改 ExecStart=/usr/bin/docker daemon -H fd://
改成 ExecStart=/usr/bin/docker daemon -H fd:// --insecure-registry=docker.oneapm.me
重启Docker
systemctl daemon-reload
sudo service docker restart

B.在Centos环境中添加

1)查看docker.service的文件路径

使用内网的Docker Image启动AcmeAir应用

2)上图中Loaded节描述的文件位置即为docker.service文件的路径,然后查看文件,

使用内网的Docker Image启动AcmeAir应用

3)上图中,可以看到,依赖的参数配置,是从/etc/sysconfig/docker中加载进来的。用编辑器打开/etc/sysconfig/docker,然后在OPTIONS中添加下面的内容,然后重新加载配置systemctl daemon-reload,再重启docker

如果没有上图中的EnvironmentFile参数配置 可以直接在添加 ExecStart=/usr/bin/docker daemon -H fd:// --insecure-registry=docker.oneapm.me

OPTIONS='--selinux-enabled  --insecure-registry docker.oneapm.me'
systemctl daemon-reload
systemctl restart docker.service

C.在windows环境中添加

boot2docker ssh
sudo vi /var/lib/boot2docker/profile
增加一行
EXTRA_ARGS="--insecure-registry docker.oneapm.me"
保存,然后重启docker服务:
sudo /etc/init.d/docker restart

D.任何环境均可使用带启动参数后台方式启动(如果上面的方式没有生效,请使用这种这种方式)

若使用命令行方式启动docker:
nohup docker -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock --insecure-registry docker.oneapm.me -d > /dev/null 2>&1 &

2.拉取镜像(image)

只需要选择cassandra和mysql其中一个

1)cassandra数据库版本的镜像

创建一个脚本 vi pullimages_cassandra.sh ,内容如下block里面所示,然后执行脚本sh pullimages_cassandra.sh

#!/bin/bash
docker pull docker.oneapm.me/acmeair/webapp
docker pull docker.oneapm.me/acmeair/auth-service
docker pull docker.oneapm.me/acmeair/eureka
docker pull docker.oneapm.me/acmeair/zuul
docker pull docker.oneapm.me/acmeair/loader
docker pull docker.oneapm.me/acmeair/cassandra
docker pull docker.oneapm.me/ubuntu
docker pull docker.oneapm.me/crosbymichael/skydock
docker pull docker.oneapm.me/crosbymichael/skydns

2)MySQL数据库版本的镜像

创建一个脚本 vi pullimages_mysql.sh ,内容如下block里面所示,然后执行脚本sh pullimages_mysql.sh

#!/bin/bash
docker pull docker.oneapm.me/acmeair/webapp-mysql
docker pull docker.oneapm.me/acmeair/auth-service-mysql
docker pull docker.oneapm.me/acmeair/eureka
docker pull docker.oneapm.me/acmeair/zuul
docker pull docker.oneapm.me/acmeair/loader-mysql
docker pull docker.oneapm.me/acmeair/mysql
docker pull docker.oneapm.me/ubuntu
docker pull docker.oneapm.me/crosbymichael/skydock
docker pull docker.oneapm.me/crosbymichael/skydns

3.修改镜像名称

创建一个新脚本:renameimages.sh,内容如下block所示,然后执行 sh renameimages.sh

#!/bin/bash
images=`docker images | grep "oneapm" | awk '{print $1}'`
for i in $images
do
newname=`echo "$i" | cut -d / -f 2-3`
docker tag $i $newname
docker rmi -f $i
done

4.启动镜像

下载acmeair-netflsixosshttps://yunpan.cn/cvX6wBK7M5ptE (提取码:2da6)请下载适合自己环境的压缩文件),解压后,执行启动脚本(根据上面镜像版本,选择启动cassandra或MySQL的应用):

1)cassandra数据库版本的环境

cd acmeair-netflixoss.git/bin
./startallexceptscaler.sh

2)MySQL数据库版本的环境

cd acmeair-netflixoss.git/bin
./startallwithmysql.sh

5.部署ejb-server并启动它

注:这只针对mysql版的

docker cp ejb-server-0.4.0.jar wlsadmin1:/u01/

AcmeAir相关问题及解决方法链接

6.验证是否已经正常启动

主页面可以正常打开,并且登陆、账户、查票等功能可以正常使用,如图:

使用内网的Docker Image启动AcmeAir应用

或者使用 acmeair-netflixoss/bin/testzuul.sh,确认收到 200 返回值 (如果提示curl not found ,应该是机器没有curl命令,请使用命令安装 apt-get install curl )

root@acmeair-haishan-test:~/acmeair/acmeair-netflixoss/bin# ./testzuul.sh
200 HTTP://172.17.0.4/rest/api/login
200 HTTP://172.17.0.4/rest/api/customer/byid/uid0@email.com
200 HTTP://172.17.0.4/rest/api/flights/queryflights
200 HTTP://172.17.0.4/rest/api/login/logout?login=uid0@email.com
200 HTTP://172.17.0.4/rest/api/login
200 HTTP://172.17.0.4/rest/api/customer/byid/uid0@email.com
200 HTTP://172.17.0.4/rest/api/flights/queryflights
200 HTTP://172.17.0.4/rest/api/login/logout?login=uid0@email.com
200 HTTP://172.17.0.4/rest/api/login
200 HTTP://172.17.0.4/rest/api/customer/byid/uid0@email.com
200 HTTP://172.17.0.4/rest/api/flights/queryflights
200 HTTP://172.17.0.4/rest/api/login/logout?login=uid0@email.com
200 HTTP://172.17.0.4/rest/api/login
200 HTTP://172.17.0.4/rest/api/customer/byid/uid0@email.com
200 HTTP://172.17.0.4/rest/api/flights/queryflights
200 HTTP://172.17.0.4/rest/api/login/logout?login=uid0@email.com
200 HTTP://172.17.0.4/rest/api/login
200 HTTP://172.17.0.4/rest/api/customer/byid/uid0@email.com
200 HTTP://172.17.0.4/rest/api/flights/queryflights
200 HTTP://172.17.0.4/rest/api/login/logout?login=uid0@email.com
200 HTTP://172.17.0.4/rest/api/login
200 HTTP://172.17.0.4/rest/api/customer/byid/uid0@email.com
200 HTTP://172.17.0.4/rest/api/flights/queryflights
200 HTTP://172.17.0.4/rest/api/login/logout?login=uid0@email.com

下一步 部署探针 (企业版   SaaS版)

使用内网的Docker Image启动AcmeAir应用的更多相关文章

  1. redhat 7.2 内网安装docker

    本文介绍在内网环境下如果通过网络代理映射来完成docekr的安装,首先在能上网的windows机器上安装squid,并启动,本实例中windows机器IP为 192.168.192.101 ,squi ...

  2. 内网部署Docker版本Gitlab

    Gitlab部署: 1. 还原备份文件后记得拷贝gitlab-secrets.json,不然会遇到500错误 2. 下载Docker以及依赖项rpm包 3. 在外网机器下载镜像 a. 拉取——Dock ...

  3. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  4. Docker源码安装附内网镜像安装演示

    Docker源码安装附内网镜像安装演示 系统版本要求 当前系统版本:CentOS Linux release 7.9.2009 (Core) 内核版本:3.10.0-1160.el7.x86_64 注 ...

  5. Linux系统如何在离线环境或内网环境安装部署Docker服务和其他服务

    如何在离线环境或纯内网环境的Linux机器上安装部署Docker服务或其他服务.本次我们以Docker服务和Ansible服务为例. 获取指定服务的所有rpm包 保证要获取rpm包的机器能够上网. 本 ...

  6. 典型案例收集-使用OpenVPN连通多个机房内网(转)(静态路由)

    说明: 1.这篇文章主要是使用静态路由表实现的多个机房通过VPN连接后的子网机房互通. 2.OpenVPN使用的是桥接模式(server-bridge和dev tap),这个是关键点,只有这样设置才可 ...

  7. 在centos下部署docker内网私服

    Docker内网私服:docker-registry with nginx & ssl on centos docker-registry既然也是软件应用,自然最简单的方法就是使用官方提供的已 ...

  8. 内网环境上部署k8s+docker集群:集群ftp的yum源配置

    接触docker已经有一年了,想把做的时候的一些知识分享给大家. 因为公司机房是内网环境无法连接外网,所以这里所有的部署都是基于内网环境进行的. 首先,需要通过ftp服务制作本地的yum源,可以从ht ...

  9. Docker 18.03 Centos7.6 安装 内网

    首先访问https://download.docker.com/linux/centos/7/x86_64/stable/Packages/获取对应版本的rpm包docker包docker-ce-18 ...

随机推荐

  1. FTPClient.listFiles()不能获取文件

    今天使用ftp获取另一台服务器上的文件,发现不管切换到哪个目录,获取什么文件,调用FTPClient.listFiles()方法时返回的始终为空,但是代码又运行正常没有异常抛出. 网上查了下,发现有很 ...

  2. get传中文参数乱码解决方法

    通常我们前端不同页面之间传参数用得最多的方法就是get方法:在url后面加上参数.例如:www.test.com?id=1&name=hello. 英文和字母很好处理,但是如果有的参数值为中文 ...

  3. 1 python学习——python环境配置

    1 python学习--python环境配置 要学习python语言,光看书看教程还是不好,得动手去写.当然,不管学习什么编程语言,最佳的方式还在于实践. 要实践,先得有一个Python解释器来解释执 ...

  4. 使用Atlas实现MySQL读写分离

    1.MySQL所在机器 192.168.29.128(Master) 192.168.29.129(Slave) 配置好主从同步,参考 http://www.cnblogs.com/luxh/p/40 ...

  5. PE刷题记录

    PE刷题记录 PE60 / 20%dif 这道题比较坑爹. 所有可以相连的素数可以构成一张图,建出这张图,在其中找它的大小为5的团.注意上界的估算,大概在1W以内.1W内有1229个素数,处理出这些素 ...

  6. ZOJ 3826 Hierarchical Notation 模拟

    模拟: 语法的分析 hash一切Key建设规划,对于记录在几个地点的每个节点原始的字符串开始输出. . .. 对每一个询问沿图走就能够了. .. . Hierarchical Notation Tim ...

  7. jQuery对于动态生成的元素绑定无效的问题~~

    问题:很多时候发现,对动态生成的元素绑定click事件是无效的- 原因:直接绑定到动态生成的元素是无效的,是因为Jquery扫描文档找出所有的$(‘’)元素,并把函数绑定到每个元素的click事件上, ...

  8. BZOJ4589 Hard Nim(快速沃尔什变换模板)

    终于抽出时间来学了学,比FFT不知道好写到哪里去. #include <cstdio> typedef long long ll; ,p=1e9+; int k,m,n,a[N],pi[N ...

  9. 数据结构(java版)学习笔记(一)——线性表

    一.线性表的定义 线性表是n(n>=0)个具有相同特性的数据元素的有限序列. 线性表是最简单.最常用的一种数据结构 线性表属于线性结构的一种 如果一个数据元素序列满足: (1)除第一个和最后一个 ...

  10. Luogu3163 &lbrack;CQOI2014&rsqb;危桥 ---- 网络流 及 一个细节的解释

    Luogu3163 [CQOI2014]危桥 题意 有$n$个点和$m$条边,有些边可以无限次数的走,有些边这辈子只能走两次,给定两个起点和终点$a_1 --> a_2$(起点 --> 终 ...