docker打包informix镜像
来源:互联网 发布:input onchange php 编辑:程序博客网 时间:2024/06/06 08:57
informix 11.5的安装脚本有点问题,有时能装,有时不能。反而11.7装的非常顺利。
目录如下:
下载个informix 11.7的安装包
dockerfile
# HOW TO BUILD THIS IMAGE# -----------------------# download :iif.11.70.FC8DE.linux-x86_64.tar# Run:# $ docker build -t informix/database:11.7 .# Pull base imageFROM centos:7# Environment variablesENV INSTALL_FILE=iif.11.70.FC8DE.linux-x86_64.tar\ INSTALL_SCRIPT=install.sh\ LD_LIBRARY_PATH=/lib64\ INFORMIXSERVER=IFM\ INFORMIXDIR=/informix\ INFORMIXCHK=/informix/chk\ INFORMIXSQLHOSTS=/informix/etc/sqlhosts\ ONCONFIG=onconfig\ ONSOCPORT=9998\ DRSOCPORT=9999\ RUN_FILE=run.shENV PATH=$INFORMIXDIR/bin:$PATH# Copy fileCOPY $INSTALL_FILE $INSTALL_SCRIPT $RUN_FILE $INFORMIXDIR/# Install informixRUN chmod u+x $INFORMIXDIR/$INSTALL_SCRIPT && \ . $INFORMIXDIR/$INSTALL_SCRIPT# volumeVOLUME [$INFORMIXCHK]# expose portEXPOSE $ONSOCPORT $DRSOCPORT# start databaseCMD sh $INFORMIXDIR/$RUN_FILE
安装脚本install.sh
#!/bin/bash# add user and groupgroupadd informixuseradd informix -g informixecho 'informix' | passwd informix --stdin# yum install require packageyum install -y bc# tar packages and installDISK=diskmkdir $INFORMIXDIR/$DISK $INFORMIXCHKtar -xvf $INFORMIXDIR/$INSTALL_FILE -C $INFORMIXDIR/$DISKrm -f $INSTALL_FILEsh $INFORMIXDIR/$DISK/ids_install -i silent -DLICENSE_ACCEPTED=TRUErm -rf $INFORMIXDIR/$DISK# set envcat >/home/informix/setenv <<EOFexport INFORMIXSERVER=$INFORMIXSERVERexport INFORMIXDIR=$INFORMIXDIRexport INFORMIXSQLHOSTS=$INFORMIXSQLHOSTSexport ONCONFIG=$ONCONFIGexport RUN_FILE=$RUN_FILEexport PATH=$PATHEOFecho '. ~/setenv' >> /home/informix/.bash_profile# create chktouch $INFORMIXCHK/rootchkchmod 660 $INFORMIXCHK/*chown -R informix:informix $INFORMIXCHK# create configcp $INFORMIXDIR/etc/onconfig.std $INFORMIXDIR/etc/onconfigsed -i 's?ROOTPATH $INFORMIXDIR\/tmp\/demo_on.rootdbs?ROOTPATH '$INFORMIXCHK'\/rootchk?g' $INFORMIXDIR/etc/onconfigsed -i 's?DBSERVERNAME?DBSERVERNAME '$INFORMIXSERVER'?g' $INFORMIXDIR/etc/onconfigsed -i 's?DBSERVERALIASES?DBSERVERALIASES '$INFORMIXSERVER'_DR?g' $INFORMIXDIR/etc/onconfigchown -R informix:informix $INFORMIXDIR/etc/onconfig# create sqlhostINFORMIXSERVER_DR=$INFORMIXSERVER'_DR'cat >$INFORMIXSQLHOSTS <<EOF$INFORMIXSERVER onsoctcp localhost $ONSOCPORT$INFORMIXSERVER_DR drsoctcp localhost $DRSOCPORTEOFchmod 660 $INFORMIXSQLHOSTSchown -R informix:informix $INFORMIXSQLHOSTS
启动脚本run.sh
#!/bin/bash########### SIGTERM handler ############function _term() { echo "Stopping container." echo "SIGTERM received, shutting down database!" onmode -sy onmode -ky}########### SIGKILL handler ############function _kill() { echo "SIGKILL received, shutting down database!" onmode -ky}# Set SIGTERM handlertrap _term SIGTERM# Set SIGKILL handlertrap _kill SIGKILL# config pathCONFIG_PATH=$INFORMIXDIR/etc/oncfg_$INFORMIXSERVER.0# start databaseif [ ! -f $CONFIG_PATH ]; then echo "initial informix!" oninit -ivyelse echo "open informix!" oninit -vyfitail -f $INFORMIXDIR/tmp/online.log &childPID=$!wait $childPIDbuild 以下镜像
启动镜像
0 0
- docker打包informix镜像
- docker打包迁移镜像
- docker 7 打包 docker 的镜像
- Docker 容器基础系统镜像打包
- springboot打包docker镜像部署
- 将spring cloud打包docker镜像
- [Docker]Docker镜像
- Spring Boot项目打包成docker镜像
- docker(五):Mac docker 自定义nginx配置打包nginx镜像
- 【Docker】docker镜像原理
- 【Docker】Docker构建镜像
- Docker镜像
- 关于docker镜像
- Docker镜像制作
- Docker中的镜像
- docker 镜像
- docker镜像
- docker镜像操作
- 生成唯一的订单号
- 给出一个包含 0 .. N 中 N 个数的序列,找出0 .. N 中没有出现在序列中的那个数。
- Java语言输出2到100之间的质数
- 技术宅找女朋友的技术分析
- [LeetCode] Regular Expression Matching 解题报告
- docker打包informix镜像
- 一个java泛型的例子
- 多线程实现服务器与多个客户端通信
- Elasticsearch Reference [5.2] » Setup Elasticsearch
- bzoj 3172: [Tjoi2013]单词 后缀数组+rmq+二分
- Python + Graphviz绘制神经网络结构图--简化版本实现
- bzoj1012: [JSOI2008]最大数maxnumber
- iOS C++ 关于深度学习(机器学习) (一)学习概览
- 华为OJ-------简单错误记录