Skip to content

Commit d6d5baf

Browse files
committed
Dockerfile: finish stretch→buster upgrade, python3
1 parent e858f7c commit d6d5baf

File tree

5 files changed

+22
-19
lines changed

5 files changed

+22
-19
lines changed

Dockerfile

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,41 @@
11
FROM debian:buster
22

33
# Package signing keys for Docker Engine and Phusion Passenger
4-
ADD keys/58118E89F3A912897C070ADBF76221572C52609D.asc keys/561F9B9CAC40B2F7.asc /tmp/
4+
ADD keys/58118E89F3A912897C070ADBF76221572C52609D.asc keys/561F9B9CAC40B2F7.asc keys/docker-archive-keyring.gpg /tmp/
55

66
# Install passenger
77

88
RUN apt-get update && \
99
apt-get install -y dirmngr gnupg && \
1010
apt-key add --no-tty /tmp/561F9B9CAC40B2F7.asc && \
1111
apt-get install -y apt-transport-https ca-certificates && \
12-
sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger stretch main > /etc/apt/sources.list.d/passenger.list'
12+
sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger buster main > /etc/apt/sources.list.d/passenger.list'
1313

1414
RUN apt-get update && \
1515
apt-get install -y --no-install-recommends passenger python3-setuptools build-essential python3-dev python3-pip git && \
16-
pip3 install pip==9.0.3
16+
pip3 install pip==21.1.3
1717

18-
RUN apt-get install -y --no-install-recommends libcurl4-openssl-dev libssl1.0-dev
19-
20-
RUN apt-key add --no-tty /tmp/58118E89F3A912897C070ADBF76221572C52609D.asc
18+
RUN apt-get install -y --no-install-recommends libcurl4-openssl-dev libssl-dev
2119

20+
RUN mv /tmp/docker-archive-keyring.gpg /usr/share/keyrings/docker-archive-keyring.gpg
2221
RUN mkdir -p /etc/apt/sources.list.d && \
23-
echo deb https://apt.dockerproject.org/repo debian-stretch main > /etc/apt/sources.list.d/docker.list && \
22+
echo \
23+
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \
24+
buster stable" > /etc/apt/sources.list.d/docker.list && \
2425
apt-get update && \
25-
apt-get -yq --no-install-recommends install docker-engine=17.05.0~ce-0~debian-stretch && \
26+
apt-get -yq --no-install-recommends install docker-ce=5:20.10.7~3-0~debian-buster docker-ce-cli containerd.io && \
2627
apt-get clean
2728

2829
ARG arvversion
2930
COPY dist/arvados-cwl-runner-${arvversion}.tar.gz /root
30-
RUN cd /root && pip install arvados-cwl-runner-${arvversion}.tar.gz
31+
RUN cd /root && pip3 install arvados-cwl-runner-${arvversion}.tar.gz
3132

3233
ARG version
3334
COPY dist/wes_service-${version}-*.whl /root
34-
RUN cd /root && pip install $(ls wes_service-${version}-*.whl)[arvados]
35-
35+
RUN cd /root && pip3 install $(ls wes_service-${version}-*.whl)[arvados] connexion[swagger-ui]
3636
COPY passenger_wsgi.py /var/www/wes-server/passenger_wsgi.py
3737

3838
WORKDIR /var/www/wes-server/
3939
RUN chown www-data:www-data -R /var/www && adduser www-data docker
4040

41-
CMD ["passenger", "start", "--environment=production", "--user=www-data"]
41+
CMD ["passenger", "start", "--environment=production", "--user=www-data", "--python=python3"]

keys/docker-archive-keyring.gpg

2.7 KB
Binary file not shown.

setup.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929
install_requires=[
3030
"connexion >= 2.0.2, < 3",
3131
"ruamel.yaml >= 0.15.78, <= 0.16.5",
32-
"schema-salad < 6",
3332
],
3433
entry_points={
3534
"console_scripts": [

wes-docker.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
#!/bin/sh
2-
set -e
2+
set -ex
33
python setup.py sdist
4-
docker build --build-arg version=2.3 -t commonworkflowlanguage/workflow-service .
5-
docker run -ti \
4+
docker build --build-arg version=4.0 --build-arg arvversion=2.2.1 -t commonworkflowlanguage/workflow-service .
5+
docker run -ti -p 127.0.0.1:3000:3000/tcp \
66
-v$PWD/config.yml:/var/www/wes-server/config.yml \
77
-v/etc/ssl/certs/ssl-cert-snakeoil.pem:/etc/ssl/certs/ssl-cert-wes.pem \
88
-v/etc/ssl/private/ssl-cert-snakeoil.key:/etc/ssl/private/ssl-cert-wes.key \

wes_service/wes_service_main.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
def setup(args=None):
1616
if args is None:
17-
args = argparse.Namespace()
17+
args = get_parser().parse_args([]) # grab the defaults
1818

1919
configfile = "config.yml"
2020
if os.path.isfile(configfile):
@@ -43,7 +43,7 @@ def rs(x):
4343
return app
4444

4545

46-
def main(argv=sys.argv[1:]):
46+
def get_parser() -> argparse.Namespace:
4747
parser = argparse.ArgumentParser(description="Workflow Execution Service")
4848
parser.add_argument(
4949
"--backend",
@@ -61,7 +61,11 @@ def main(argv=sys.argv[1:]):
6161
)
6262
parser.add_argument("--debug", action="store_true", default=False)
6363
parser.add_argument("--version", action="store_true", default=False)
64-
args = parser.parse_args(argv)
64+
return parser
65+
66+
67+
def main(argv=sys.argv[1:]):
68+
args = get_parser.parse_args(argv)
6569

6670
if args.version:
6771
pkg = pkg_resources.require("wes_service")

0 commit comments

Comments
 (0)