Skip to main content

Posts

Showing posts from 2016

Install oracle 11.2.0.3 in a centos 7 docker container

I installed Oracle 11.2.0.3 in a Centos 7 docker container with following steps: Setup bigger /dev/shm for the docker container, you may follow http://data-matters.blogspot.com/2016/02/config-size-of-shared-memorydevshm-for.html Install dependencies: yum -y install gcc gcc-c++ libaio-devel make Setup a rsp file for install, just follow https://gist.github.com/arnobroekhof/8465884 http://nervinformatica.com.br/blog/?p=2303 Edit stage/cvu/cvu_prereq.xml, make RUNLEVEL check IGNORABLE. The step is based on http://www.torkwrench.com/2014/10/16/automating-oracle-11-2-installation-on-rhel-7/ Install with runInstaller script: ./runInstaller -silent -responseFile /path/to/rspfile

Config the size of shared memory(/dev/shm) for docker containers

Due to the issue from github , the size of shared memory is fixed at 64M. If you want larger size /dev/shm, please upgrade your docker to version newer than 1.10, and specify --shm-size when you run a docker image. Below is the help message of --shm-size. --shm-size="" Size of /dev/shm. The format is . number must be greater than 0. Unit is optional and can be b (bytes), k (kilobytes), m (megabytes), or g (gigabytes). If you omit the unit, the system uses bytes. If you omit the size entirely, the system uses 64m.

_PyErr_ReplaceException for virtualenv in Python 2.7

After upgraded Python 2.7 to latest version, it may occur to _PyErr_ReplaceException sometimes in virtualenv created by former version of python. For example: >>> import io Traceback (most recent call last): File " ", line 1, in File "/usr/lib/python2.7/io.py", line 51, in import _io ImportError: /home/ubuntu/ikaka/leanStudy/venv/lib/python2.7/lib-dynload/_io.so: undefined symbol: _PyErr_ReplaceException This is because the virtualenv had copied the python executable binary but linked lib directory. So just replace the python executable binary in virtualenv with the one in /usr/lib, like cp /usr/bin/python /bin/python

Change the default user when start a docker container

When run(start) a docker container from an image, we can specify the default user by passing -u option in command line(In https://docs.docker.com/engine/reference/run/#user ). For example docker run -i -t -u ubuntu ubuntu:latest /bin/bash We can also use the USER instruction in DOCKERFILE to do the same thing(In https://docs.docker.com/engine/reference/builder/#user), note that the option in command line will override the one in the DOCKERFILE. And there is actually another way to start a container with neither DOCKERFILE nor -u option, just by a command like: docker run -i -t ubuntu:latest /bin/bash # with ubuntu as the default user This happens when your start the container from an image committed by a container with ubuntu as the default user. Or in detail: Run a container from some basic images, create ubuntu user inside it, commit the container to CUSTOM_IMAGE:1 . Run a container from CUSTOM_IMAGE:1 with "-u ubuntu" option, and commit the container to CUSTOM