diff --git a/docker/glance/build-all b/docker/glance/build-all new file mode 100644 index 0000000000..2de2ae6920 --- /dev/null +++ b/docker/glance/build-all @@ -0,0 +1,10 @@ +#!/bin/sh + +for image in glance-base glance-api glance-registry; do +( + cd $image + docker build -t docker.usersys.redhat.com/larsks/${image}:latest . + docker push docker.usersys.redhat.com/larsks/${image}:latest +) +done + diff --git a/docker/glance/glance-api/Dockerfile b/docker/glance/glance-api/Dockerfile index d89ad15497..10e713fa58 100644 --- a/docker/glance/glance-api/Dockerfile +++ b/docker/glance/glance-api/Dockerfile @@ -1,11 +1,6 @@ -FROM docker.usersys.redhat.com/lhh1/rhel-osp-base +FROM docker.usersys.redhat.com/larsks/glance-base MAINTAINER Lars Kellogg-Stedman -yum -y install \ - openstack-utils \ - openstack-glance \ - mariadb; yum clean all - ADD ./start.sh /start.sh CMD ["/start.sh"] diff --git a/docker/glance/glance-api/start.sh b/docker/glance/glance-api/start.sh index d297a08ff6..dbd1ae2e96 100644 --- a/docker/glance/glance-api/start.sh +++ b/docker/glance/glance-api/start.sh @@ -1,60 +1,5 @@ -#!/bin/bash +#!/bin/sh -: ${GLANCE_DB_USER:=glance} -: ${GLANCE_DB_NAME:=glance} -: ${KEYSTONE_ADMIN_PASSWORD:=redhat} - -if ! [ "$KEYSTONE_ADMIN_TOKEN" ]; then - echo "*** Missing KEYSTONE_ADMIN_TOKEN." - exit 1 -fi - -if ! [ "$GLANCE_DB_PASSWORD" ]; then - GLANCE_DB_PASSWORD=$(openssl rand -hex 15) -fi - -if ! [ "$GLANCE_KEYSTONE_PASSWORD" ]; then - GLANCE_KEYSTONE_PASSWORD=$(openssl rand -hex 15) -fi - -mysql -h ${MARIADBMASTER_PORT_3306_TCP_ADDR} -u root -p${DB_ROOT_PASSWORD} mysql < + +RUN yum -y install \ + openstack-utils \ + openstack-glance \ + python-keystoneclient \ + mariadb; yum clean all + +RUN mkdir /opt/glance +COPY config-glance.sh /opt/glance/config-glance.sh + diff --git a/docker/glance/glance-base/config-glance.sh b/docker/glance/glance-base/config-glance.sh new file mode 100644 index 0000000000..ae15b1a782 --- /dev/null +++ b/docker/glance/glance-base/config-glance.sh @@ -0,0 +1,55 @@ +#!/bin/sh +# +# usage config-glance.sh ( api | registry ) + +service=$1 +cfg=/etc/glance/glance-${service}.conf + +: ${GLANCE_DB_USER:=glance} +: ${GLANCE_DB_NAME:=glance} +: ${GLANCE_KEYSTONE_USER:=glance} +: ${KEYSTONE_AUTH_PROTOCOL:=http} +: ${ADMIN_TENANT_NAME:=admin} + +if ! [ "$GLANCE_DB_PASSWORD" ]; then + echo "*** Missing GLANCE_DB_PASSWORD" >&2 + exit 1 +fi + +crudini --del $cfg \ + DEFAULT \ + log_file \ +crudini --set $cfg \ + keystone_authtoken \ + admin_password \ + "${GLANCE_KEYSTONE_PASS}" + +for option in auth_protocol auth_host auth_Port; do + crudini --del $cfg \ + keystone_authtoken \ + $option +done + +crudini --set $cfg + keystone_authtoken \ + auth_uri \ + "${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONEMASTER_5000_PORT_5000_TCP_ADDR}:5000/" +crudini --set $cfg + keystone_authtoken \ + admin_tenant_name \ + "${ADMIN_TENANT_NAME}" +crudini --set $cfg + keystone_authtoken \ + admin_user \ + "${GLANCE_KEYSTONE_USER}" +crudini --set $cfg + keystone_authtoken \ + admin_password \ + "${GLANCE_KEYSTONE_PASS}" + +crudini --set $cfg \ + database \ + connection \ + "mysql://${GLANCE_DB_USER}:${GLANCE_DB_PASSWORD}@${MARIADBMASTER_PORT_3306_TCP_ADDR}:${MARIADBMASTER_PORT_3306_TCP_PORT}/${GLANCE_DB_NAME}" + + diff --git a/docker/glance/glance-registry/Dockerfile b/docker/glance/glance-registry/Dockerfile index d89ad15497..10e713fa58 100644 --- a/docker/glance/glance-registry/Dockerfile +++ b/docker/glance/glance-registry/Dockerfile @@ -1,11 +1,6 @@ -FROM docker.usersys.redhat.com/lhh1/rhel-osp-base +FROM docker.usersys.redhat.com/larsks/glance-base MAINTAINER Lars Kellogg-Stedman -yum -y install \ - openstack-utils \ - openstack-glance \ - mariadb; yum clean all - ADD ./start.sh /start.sh CMD ["/start.sh"] diff --git a/docker/glance/glance-registry/start.sh b/docker/glance/glance-registry/start.sh new file mode 100644 index 0000000000..4c362fc24e --- /dev/null +++ b/docker/glance/glance-registry/start.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +: ${GLANCE_DB_USER:=glance} +: ${GLANCE_DB_NAME:=glance} +: ${KEYSTONE_AUTH_PROTOCOL:=http} +: ${GLANCE_KEYSTONE_USER:=glance} +: ${ADMIN_TENANT_NAME:=admin} + +if ! [ "$KEYSTONE_ADMIN_TOKEN" ]; then + echo "*** Missing KEYSTONE_ADMIN_TOKEN" >&2 + exit 1 +fi + +if ! [ "$DB_ROOT_PASSWORD" ]; then + echo "*** Missing DB_ROOT_PASSWORD" >&2 + exit 1 +fi + +if ! [ "$GLANCE_DB_PASSWORD" ]; then + GLANCE_DB_PASSWORD=$(openssl rand -hex 15) + export GLANCE_DB_PASSWORD +fi + +sh /opt/glance/config-glance.sh registry + +mysql -h ${MARIADBMASTER_PORT_3306_TCP_ADDR} -u root \ + -p${DB_ROOT_PASSWORD} mysql <