Thanks for looking at my profile. Have a wonderful day!
jbonhag / db2-docker Goto Github PK
View Code? Open in Web Editor NEWA Docker container for DB2 (experimental)
A Docker container for DB2 (experimental)
I'm getting SQL1042C An unexpected system error occurred when running the build script.
If I add the following to the Dockerfile things work for me.
VOLUME /home/db2inst1
Are others not seeing this issue?
Also see that you removed the 'sysctl -w kernel.shmmax=18446744073709551615' command from the startup script. Have you started to simply set this on the docker host ?
Hi,
I found that you wrote the first image to run DB2. It is very interesting. I am a DB2 DBA, and based on yours and other images, I create my own set of images.
If you want to take a look:
I would like to invite the people that already create a DB2 docker image towork together for a better solution. I am member of a GitHub organizacion called db2-coders, and I propose you to be part of it, and let's community image.
Seems like DB2 is running out of memory, even while running in privileged mode and with shmmax set.
IBM sez:
At a minimum, a DB2 database system requires 256 MB of RAM. For a system running just a DB2 product and the DB2 GUI tools, a minimum of 512 MB of RAM is required. However, 1 GB of RAM is recommended for improved performance. These requirements do not include any additional memory requirements for other software that is running on your system.
When determining memory requirements, be aware of the following:
DB2 products that run on HP-UX Version 11i for Itanium-based systems require 512 MB of RAM at a minimum.
For IBM® data server client support, these memory requirements are for a base of five concurrent client connections. You will need an additional 16 MB of RAM per five client connections.
Memory requirements are affected by the size and complexity of your database system, and the extent of database activity and the number of clients accessing your system.
For DB2 server products, the self-tuning memory feature simplifies the task of memory configuration by automatically setting values for several memory configuration parameters. When enabled, the memory tuner dynamically distributes available memory resources among several memory consumers including sort, the package cache, the lock list and buffer pools.
DB2 requires paging, also called swap to be enabled. This configuration is required to support various functions in DB2 which monitor or depend on knowledge of swap/paging space utilization. The actual amount of swap/paging space required varies across systems and is not solely based on memory utilization by application software. It is only strictly required by DB2 on the Solaris and HP platforms due to their use of early paging space allocation.
A reasonable minimum swap/paging space configuration for most systems is 25-50% of RAM. Solaris and HP systems with many small databases or multiple databases tuned by STMM might require a paging space configuration of 1 x RAM or higher. These higher requirements are due to virtual memory pre-allocated per database / instance, and retained virtual memory in the case of STMM tuning multiple databases. Additional swap/paging space might be wanted to provision for unanticipated memory overcommitment on a system.
Hi Jeff,
I keep getting this error during the build:
[..]
Task #38 start
Description: Updating global profile registry
Estimated time 3 second(s)
Task #38 end
A minor error occurred while installing "DB2 Express-C " on this computer.
Some features may not function correctly.
For more information see the DB2 installation log at
"/tmp/db2_install.log.7".
2015/01/28 18:18:11 The command [/bin/sh -c /cache/expc/db2_install -b /opt/ibm/db2/V10.5] returned a non-zero code: 1
Any clue of what could I've been doing wrong/missing or how can I get more details about this error?
Docker version 1.1.2, build d84a070/1.1.2
Thanks!
Hi Jeff,
I recently created my own DB2 container and had to overcome many of these issues myself, before discovering you're Dockerfile. we were literally working on this at roughly the same time.
I have one issue which I cannot seem to get around. For whatever reason, the db2 create statement takes extremely long in certain situations.
Here are some examples of timing that statement on various configurations.
I can't seem to figure this one out. All I can say is that I've been used to this statement taking around 10-30seconds but was shocked to find it take 40minutes on production hardware where my build server is located. Do you have any idea what could be causing this? The extremes are very extreme...5 seconds on the one hand and 40 minutes on the other...
Because it's least likely to change (and takes a really long time to complete), it makes sense to add the tar.gz install file first thing, so we never 😉 have to rebuild that image.
I'm unable to create a folder in the /var/custom folder in the base image store/ibmcorp/db2_developer_c:11.1.4.4-x86_64
This is the error I get when I try to build the image
Step 2/4 : RUN mkdir /var/custom/DViewWE
---> Running in aaf9b4845192
mkdir: cannot create directory '/var/custom/DViewWE': No such file or directory
Here is the dockerFile
FROM store/ibmcorp/db2_developer_c:11.1.4.4-x86_64
RUN mkdir /var/custom/DViewWE
COPY CreateDViewWEDB.sql /var/custom
RUN chmod a+x /var/custom/CreateDViewWEDB.sql
Need help.
|ruby-2.1.2| Paulos-MacBook-Pro in ~/develop/github/db2-docker
± |master ✗| → sh ./build.sh
Sending build context to Docker daemon 594.8 MB
Sending build context to Docker daemon
Step 0 : FROM debian:7.4
---> e565fbbc6033
Step 1 : MAINTAINER jeff
---> Using cache
---> 4c60f790fd95
Step 2 : RUN apt-get update
---> Using cache
---> 5f33dcc104a3
Step 3 : RUN apt-get -y install libaio1 libnuma1 binutils
---> Using cache
---> ef1f92220cde
Step 4 : ADD v10.5_linuxx64_expc.tar.gz v10.5_linuxx64_expc.tar.gz
---> Using cache
---> 2b0cc05e9717
Step 5 : ADD db2expc.rsp db2expc.rsp
---> Using cache
---> 106b4e81ae2f
Step 6 : RUN v10.5_linuxx64_expc.tar.gz/expc/db2setup -r db2expc.rsp
---> Running in e60d2b40b1c6
DBT3505E The db2prereqcheck utility was unable to determine the Linux distribution level. Aborting the current installation ...
Run installation with the option "-f sysreq" parameter to force the installation.
2014/10/29 16:00:50 The command [/bin/sh -c v10.5_linuxx64_expc.tar.gz/expc/db2setup -r db2expc.rsp] returned a non-zero code: 67
Unable to find image 'db2' locally
Pulling repository db2
2014/10/29 16:00:52 Error: image db2 not found
2014/10/29 16:00:52 Error response from daemon: No such container: db2
Unable to find image 'db2' locally
Pulling repository db2
2014/10/29 16:00:53 Error: image db2 not found
Usage: docker stop [OPTIONS] CONTAINER [CONTAINER...]
Stop a running container by sending SIGTERM and then SIGKILL after a grace period
-t, --time=10 Number of seconds to wait for the container to stop before killing it. Default is 10 seconds.
2014/10/29 16:00:53 Error response from daemon: No such container: db2
|ruby-2.1.2| Paulos-MacBook-Pro in ~/develop/github/db2-docker
Hello
I have done some experiments around db2 on docker and was able to start db2 in a docker container without --privilege=true but using limited privileges
I have have published my finding in a blog here
http://db2indocker.blogspot.in/
Please check it out and let me know your comments
Create an image and upload it to the docker registry, something like:
db2start
db2 create database sample
db2stop
Commit it, and bingo bango bongo.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.