Skip to content

Commit

Permalink
Init commit.
Browse files Browse the repository at this point in the history
  • Loading branch information
tan9 committed Mar 12, 2018
0 parents commit ba573db
Show file tree
Hide file tree
Showing 9 changed files with 179 additions and 0 deletions.
2 changes: 2 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
.gitignore
Dockerfile
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
*.tar.gz
*.pak
55 changes: 55 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
FROM ubuntu:16.04

LABEL maintainer="Pei-Tang Huang <[email protected]>"

ARG USER=was
ARG GROUP=was

COPY source /work/source
COPY update /work/update
COPY responsefile /work/responsefile

RUN groupadd $GROUP \
&& useradd $USER -g $GROUP -m \
&& chown -R $USER:$GROUP /work /opt

# !!! IMPORTANT !!!
# change default Ubuntu's default shell interpreter from dash to bash
# or the wsadmin.sh will not run properly
RUN yes n | dpkg-reconfigure dash > /dev/null 2>&1

USER $USER

RUN echo "📦 Unarchiving WebSphere Application Server 7.0 intallation package..." \
&& mkdir -p /work/was \
&& tar -xzf /work/source/was.7000.wasdev.nocharge.linux.amd64.tar.gz -C /work/was/ \
&& echo "☑ Done." \
&& echo "📥 Installing WebSphere Application Server 7.0..." \
&& /work/was/WAS/install -options /work/responsefile/responsefile.text -silent \
&& echo "☑ Done." \
&& echo "📦 Unarchiving WebSphere Application Server 7.0 Update Installer intallation package..." \
&& mkdir -p /work/updi \
&& tar -xzf /work/source/7.0.0.*-WS-UPDI-LinuxAMD64.tar.gz -C /work/updi/ \
&& echo "☑ Done." \
&& echo "📥 Installing WebSphere Application Server 7.0 Update Installer..." \
&& /work/updi/UpdateInstaller/install -options /work/responsefile/responsefile.updateinstaller.text -silent \
&& echo "☑ Done." \
&& echo "📥 Installing WebSphere Application Server 7.0 Updates..." \
&& /opt/IBM/WebSphere/UpdateInstaller/update.sh -options /work/responsefile/responsefile.update.text -silent \
&& echo "☑ Done."

# mark createProfileShortCut2StartMenuDefault optional
RUN sed -i 's#<action path="actions/createProfileShortCut2StartMenuDefault.ant" priority="93" isFatal="false">#<action path="actions/createProfileShortCut2StartMenuDefault.ant" priority="93" isFatal="false" isOptional="true">#' \
/opt/IBM/WebSphere/AppServer/profileTemplates/default/actionRegistry.xml

# create profile
RUN /opt/IBM/WebSphere/AppServer/bin/manageprofiles.sh \
-create \
-isDefault \
-isDeveloperServer \
-omitAction createProfileShortCut2StartMenuDefault

EXPOSE 9060 9080

CMD /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/bin/startServer.sh server1 \
&& tail --retry -f /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/logs/server1/SystemOut.log
55 changes: 55 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# IBM WebSphere Application Server 7.0

Building an IBM WebSphere Application Server 7.0 for Developers image.

## Prerequisites

You have to download WebSphere Application Server v7.0 installation package and updates from IBM as following.

### Download installation files into `source` folder

1. Download `was.7000.wasdev.nocharge.linux.amd64.tar.gz` form [IBM WebSphere Application for Developers](https://www14.software.ibm.com/webapp/iwm/web/preLogin.do?lang=en_US&source=swg-wsasfd&S_CMP=web_dw_rt_swd) page (link from this [StackOverflow answer](https://stackoverflow.com/a/17523649/3440376)), and place into `source` folder.

2. Download IBM Update Installer for WebSphere Software for Linux form [IBM web site](http://www-01.ibm.com/support/docview.wss?rs=180&uid=swg24020212) (IBMid required), or direct download from [IBM's FTP](ftp://public.dhe.ibm.com/software/websphere/appserv/support/tools/UpdateInstaller/7.0.x/LinuxAMD64/). Place the download file `7.0.0.*-WS-UPDI-LinuxAMD64.tar.gz` into `source` folder.

### Download updates into `udpate` folder

Choose desired fix pick version and download from [IBM web site](http://www-01.ibm.com/support/docview.wss?rs=180&uid=swg27014463) (IBMid required), or link to [IBM's FTP](ftp://public.dhe.ibm.com/software/websphere/appserv/support/fixpacks/was70/cumulative/) navigate to `cf700*/LinuxX64/` and download WAS and WASSDK fix pack.

Take Fix Pack 21 for example, the direct download location is:

- <ftp://public.dhe.ibm.com/software/websphere/appserv/support/fixpacks/was70/cumulative/cf70021/LinuxX64/7.0.0-WS-WAS-LinuxX64-FP0000021.pak>
- <ftp://public.dhe.ibm.com/software/websphere/appserv/support/fixpacks/was70/cumulative/cf70021/LinuxX64/7.0.0-WS-WASSDK-LinuxX64-FP0000021.pak>

### Resulting directory structure

If you choose to build image for Fix Pack 21, make sure your diretory structure looks like:

```text
├── source
│   ├── 7.0.0.21-WS-UPDI-LinuxAMD64.tar.gz
│   └── was.7000.wasdev.nocharge.linux.amd64.tar.gz
└── update
├── 7.0.0-WS-WAS-LinuxX64-FP0000021.pak
└── 7.0.0-WS-WASSDK-LinuxX64-FP0000021.pak
```

## Build image

After manually download all required files and updates, run following command to build image:

```bash
docker image build -t websphere:7 .
```

A WebSphere 7.0 installation with `AppSrv01` profile will then be created and exposing 9060 port for admin console, and 9090 port for web application server HTTP access.

## Run container

Run following command to start container:

```bash
docker container run -p 9080:9080 -p 9060:9060 --name was7 websphere:7
```

Link <http://localhost:9060/ibm/console/> for admin console, you can then confugre your application server or install applications.
9 changes: 9 additions & 0 deletions responsefile/responsefile.text
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
-OPT silentInstallLicenseAcceptance="true"
-OPT allowNonRootSilentInstall="true"
-OPT disableOSPrereqChecking="true"
-OPT disableNonBlockingPrereqChecking="true"
-OPT checkFilePermissions="true"
-OPT installType="installNew"
-OPT profileType="none"
-OPT feature="noFeature"
-OPT installLocation="/opt/IBM/WebSphere/AppServer"
4 changes: 4 additions & 0 deletions responsefile/responsefile.update.text
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
-OPT checkFilePermissions="false"
-OPT disableNonBlockingPrereqChecking="true"
-W maintenance.package="/work/update"
-W product.location="/opt/IBM/WebSphere/AppServer"
5 changes: 5 additions & 0 deletions responsefile/responsefile.updateinstaller.text
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
-OPT silentInstallLicenseAcceptance="true"
-OPT allowNonRootSilentInstall="true"
-OPT disableOSPrereqChecking="true"
-OPT disableEarlyPrereqChecking="true"
-OPT installLocation="/opt/IBM/WebSphere/UpdateInstaller"
10 changes: 10 additions & 0 deletions source/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Folder for storing IBM WebSphere Server and Update Installer file

Place installation files here:

```text
was.7000.wasdev.nocharge.linux.amd64.tar.gz
7.0.0.##-WS-UPDI-LinuxAMD64.tar.gz
```

Consulting [../README.md](../README.md) documentation for download instruction.
37 changes: 37 additions & 0 deletions update/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# IBM WebSphere Application Server 7.0

Building an IBM WebSphere Application Server 7.0 for Developers image.

## Prerequisites

You have to download WebSphere Application Server v7.0 installation package and updates from IBM as following.

### Download installation files into `source` folder

1. Download `was.7000.wasdev.nocharge.linux.amd64.tar.gz` form [IBM WebSphere Application for Developers](https://www14.software.ibm.com/webapp/iwm/web/preLogin.do?lang=en_US&source=swg-wsasfd&S_CMP=web_dw_rt_swd) page (link from this [StackOverflow answer](https://stackoverflow.com/a/17523649/3440376)), and place into `source` folder.

2. Download IBM Update Installer for WebSphere Software for Linux form [IBM web site](http://www-01.ibm.com/support/docview.wss?rs=180&uid=swg24020212) (IBMid required), or direct download from [IBM's FTP](ftp://public.dhe.ibm.com/software/websphere/appserv/support/tools/UpdateInstaller/7.0.x/LinuxAMD64/). Place the download file `7.0.0.*-WS-UPDI-LinuxAMD64.tar.gz` into `source` folder.

### Download updates into `udpate` folder

Choose desired fix pick version and download from [IBM web site](http://www-01.ibm.com/support/docview.wss?rs=180&uid=swg27014463) (IBMid required), or link to [IBM's FTP](ftp://public.dhe.ibm.com/software/websphere/appserv/support/fixpacks/was70/cumulative/) navigate to `cf700*/LinuxX64/` and download WAS and WASSDK fix pack.

Take Fix Pack 21 for example, the direct download location is:

- <ftp://public.dhe.ibm.com/software/websphere/appserv/support/fixpacks/was70/cumulative/cf70021/LinuxX64/7.0.0-WS-WAS-LinuxX64-FP0000021.pak>
- <ftp://public.dhe.ibm.com/software/websphere/appserv/support/fixpacks/was70/cumulative/cf70021/LinuxX64/7.0.0-WS-WASSDK-LinuxX64-FP0000021.pak>

### Resulting directory structure

If you choose to build image for Fix Pack 21, make sure your diretory structure looks like:

```text
├── source
│   ├── 7.0.0.21-WS-UPDI-LinuxAMD64.tar.gz
│   └── was.7000.wasdev.nocharge.linux.amd64.tar.gz
└── update
├── 7.0.0-WS-WAS-LinuxX64-FP0000021.pak
└── 7.0.0-WS-WASSDK-LinuxX64-FP0000021.pak
```

## Build image

0 comments on commit ba573db

Please sign in to comment.