本部分记录如何基于已有的镜像部署应用。参考的博客为《OpenShift_034:部署 mywebsql docker image 访问 mysql 数据库》(该博主的博客需要翻墙浏览)。
这里的测试镜像选择的是我自己的博客《 Docker学习记录(2)——JAVA应用容器化(JAVA博客应用Solo)》最终产生的镜像。
基于已有镜像部署应用
- 以账号为dev密码为dev的用户登录openshift集群。
# oc login -u dev -p dev
- 创建一个名为imagetest的项目。
# oc new-project imagetest
- 以root权限运行该项目中的容器。
openshift中有scc概念,即安全上下文,需要对权限进行管理。如果不配置,可能会出现容器权限的问题。
这里由于对scc还未深入学习,暂时配置为以root权限运行容器。
# oc login -u system:admin
# oc project imagetest
# oadm policy add-scc-to-user anyuid -z default
一定要注意是在当前的project下添加权限
- 基于已有镜像部署应用。
这里已将之前生成的镜像push到了本地镜像仓库中。
# oc new-app master.example.com:5000/blog:latest --name=blog --insecure-registry=true
- 查看创建状态。
# oc get all
可以看见已经创建成功。
web console验证
- 登录web console查看。
- 查看pod的日志
可以看见服务已经正常启动。