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 image
FROM centos:7
# Environment variables
ENV 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.sh
ENV PATH=$INFORMIXDIR/bin:$PATH# Copy file
COPY $INSTALL_FILE $INSTALL_SCRIPT $RUN_FILE $INFORMIXDIR/
# Install informix
RUN chmod u+x $INFORMIXDIR/$INSTALL_SCRIPT && \. $INFORMIXDIR/$INSTALL_SCRIPT
# volume
VOLUME [$INFORMIXCHK]
# expose port
EXPOSE $ONSOCPORT $DRSOCPORT
# start database
CMD sh $INFORMIXDIR/$RUN_FILE

安装脚本install.sh

#!/bin/bash# add user and group
groupadd informix
useradd informix -g informix
echo 'informix' | passwd informix  --stdin# yum install require package
yum install -y bc
# tar packages and install
DISK=disk
mkdir $INFORMIXDIR/$DISK $INFORMIXCHK
tar -xvf $INFORMIXDIR/$INSTALL_FILE -C $INFORMIXDIR/$DISK
rm -f $INSTALL_FILE
sh $INFORMIXDIR/$DISK/ids_install -i silent -DLICENSE_ACCEPTED=TRUE
rm -rf $INFORMIXDIR/$DISK
# set env
cat >/home/informix/setenv <<EOF
export INFORMIXSERVER=$INFORMIXSERVER
export INFORMIXDIR=$INFORMIXDIR
export INFORMIXSQLHOSTS=$INFORMIXSQLHOSTS
export ONCONFIG=$ONCONFIG
export RUN_FILE=$RUN_FILE
export PATH=$PATH
EOF
echo '. ~/setenv' >> /home/informix/.bash_profile
# create chk
touch $INFORMIXCHK/rootchk
chmod 660 $INFORMIXCHK/*
chown -R informix:informix $INFORMIXCHK
# create config
cp $INFORMIXDIR/etc/onconfig.std $INFORMIXDIR/etc/onconfig
sed -i 's?ROOTPATH $INFORMIXDIR\/tmp\/demo_on.rootdbs?ROOTPATH '$INFORMIXCHK'\/rootchk?g' $INFORMIXDIR/etc/onconfig
sed -i 's?DBSERVERNAME?DBSERVERNAME '$INFORMIXSERVER'?g' $INFORMIXDIR/etc/onconfig
sed -i 's?DBSERVERALIASES?DBSERVERALIASES '$INFORMIXSERVER'_DR?g' $INFORMIXDIR/etc/onconfig
chown -R informix:informix $INFORMIXDIR/etc/onconfig
# create sqlhost
INFORMIXSERVER_DR=$INFORMIXSERVER'_DR'
cat >$INFORMIXSQLHOSTS <<EOF
$INFORMIXSERVER onsoctcp localhost $ONSOCPORT
$INFORMIXSERVER_DR drsoctcp localhost $DRSOCPORT
EOF
chmod 660 $INFORMIXSQLHOSTS
chown -R informix:informix $INFORMIXSQLHOSTS

启动脚本run.sh

#!/bin/bash
########### SIGTERM handler ############
function _term() {echo "Stopping container."echo "SIGTERM received, shutting down database!"onmode -syonmode -ky
}########### SIGKILL handler ############
function _kill() {echo "SIGKILL received, shutting down database!"onmode -ky
}# Set SIGTERM handler
trap _term SIGTERM# Set SIGKILL handler
trap _kill SIGKILL# config path
CONFIG_PATH=$INFORMIXDIR/etc/oncfg_$INFORMIXSERVER.0
# start database
if [ ! -f $CONFIG_PATH ]; thenecho "initial informix!"oninit -ivy
elseecho "open informix!"oninit -vy
fitail -f $INFORMIXDIR/tmp/online.log &
childPID=$!
wait $childPID

build 以下镜像

启动镜像

docker打包informix镜像相关推荐

  1. linux下jdk的安装和docker打包运行镜像

    文章目录 linux下jdk的安装和docker打包运行镜像 1.jdk安装 添加下面内容 2.nohup安装 2.1.创建springboot项目 2.2.IDEA+Spring Cloud+Mav ...

  2. Docker打包python镜像

    Docker打包python镜像 下载依赖 pip download fastapi pip download uvicorn 准备requirements.txt文件 main.py脚本 from ...

  3. docker 打包新镜像原有配置丢失_Docker简介与安装

    Docker简介:Docker与虚拟机区别:Docker的优点及内部组件说明:如何安装Docker与镜像加速配置. 什么是Docker Docker提供了一个可以运行你的应用程序的封装,或者说容器.它 ...

  4. docker打包 python镜像

    1.安装python3 这里有一个bug,由于centos系统自带python2,而且python的软连接是默认指向python2的, 所以,当安装python3之后,就需要修改软连接,将python ...

  5. Docker打包python镜像(Windows)

    1. 创建requirement.txt 在程序pycharm 的 Terminal 输入: pip freeze > requirements.txt 2. 构建Docker镜像结构 dock ...

  6. docker运行sentinel、Docker打包Sentinel 镜像、控制台环境搭建及使用介绍

    1.Sentinel 介绍 Sentinel 提供一个轻量级的开源控制台,它提供机器发现以及健康情况管理.监控(单机和集群),规则管理和推送的功能. Sentinel 控制台包含如下功能: 查看机器列 ...

  7. docker打包镜像(实用版)

    将当前所需的容器打包成镜像 该方法是使用docker commit 命令,其命令格式为: docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]] 主要 ...

  8. docker 打包镜像

    因为某台服务器需要部署Tomcat,但是该服务武器不能连接外网,所以需要先pull拉一下镜像包,如果已经有了现有的镜像就不需要拉取了,直接从第二部开始就行. 具体操作步骤如下: 1. 拉取镜像(要能连 ...

  9. idea 使用 Docker 打包镜像的两种方式_07

    idea 使用 Docker 打包镜像的两种方式_07 一.方式: 一.idea 的docker 插件 和Dockerfile: 二.pom和Dockerfile结合. 二.详解 第一种: 1.第一步 ...

  10. Windows下用docker打包镜像

    Windows下使用docker打包镜像 编写dockerfile并将其放入待打包code的同级目录下 生成requirements文档 通过docker命令打包程序 1.Dockerfile doc ...

最新文章

  1. Android UI学习 - Linear Layout, RelativeLayout
  2. 新站优化工作还有一点点补充内容!
  3. Linux 内核同步(二):自旋锁(Spinlock)
  4. 空间金字塔Spatial Pyramid的BOW和Pyramid HOG的多核
  5. cant find module express
  6. 几个改变世界的java工具
  7. Php官方指导安装与配置
  8. linux下命令集合
  9. android intent actionview,android – 检查Intent.ACTION_VIEW上的用户操作
  10. C++中读取文件乱码问题
  11. 底层I/O性能大PK:Python/Java被碾压,Rust有望取代C++
  12. python创建txt文件并写入-python如何将数据写入本地txt文本文件
  13. ant design-Table中的分页实现(包括点击跳页,输入跳页,以及指定每页项目数)
  14. 施耐德PLC Unity Pro xl 软件使用四
  15. python图像风格迁移_快速图像风格迁移
  16. c语言 文本放大,Javascript 编写的文字放大效果_js
  17. 精准测试白皮书2020版
  18. “宅一族”大数据报告:喜欢学习,喜欢健身,生活同样很精彩
  19. 3 JWT 和 JWS
  20. 计算机初操作员培训大纲,计算机初级培训大纲.doc

热门文章

  1. 单片机0 99c语言程序,单片机C语言程序设计实训99例.doc
  2. 启明星请假单加班单管理系统
  3. 【物联网毕设基础】实时时钟芯片 DS1302 介绍
  4. python 爬取直播_python 斗鱼直播间爬取代码
  5. 某超市销售数据的分析
  6. item_cat_get - 获得淘宝商品类目
  7. python批量检索文献pubmed_推荐一个检索文献强大的浏览器插件(Pubmed plus)
  8. DBeaver执行SQL脚本文件
  9. Unity--使用反编译软件ILSpy查看dll中的代码
  10. 实用工具【SqlPrompt】 【Subline】 【XMind】 【PhotoShop】 【TakeColor】 【Q+】本次只讨论SqlPrompt...