Initial code commit
This commit is contained in:
parent
cf72c0fd43
commit
75d003a3be
12 changed files with 1203 additions and 0 deletions
36
Dockerfile
Normal file
36
Dockerfile
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
FROM hashicorp/vault:latest
|
||||
|
||||
# Install Bash
|
||||
RUN apk add --no-cache --upgrade bash
|
||||
|
||||
# Install python/pip (needed to run some of the initialization logic)
|
||||
ENV PYTHONUNBUFFERED=1
|
||||
RUN apk add --update --no-cache python3 && ln -sf python3 /usr/bin/python
|
||||
RUN python3 -m venv .venv \
|
||||
&& source .venv/bin/activate \
|
||||
&& python -m ensurepip \
|
||||
&& pip install --no-cache --upgrade pip setuptools
|
||||
|
||||
# Needed for parsing JSON in Bash (which is needed to parse the unseal keys and root token)
|
||||
RUN apk add --no-cache jq
|
||||
|
||||
# Copy the Vault configuration file into the container
|
||||
COPY vault-config.hcl /vault/config/vault-config.hcl
|
||||
|
||||
# Copy the startup script into the container (also verifying it's encoded properly)
|
||||
COPY ./entrypoint.sh /entrypoint.sh
|
||||
RUN dos2unix /entrypoint.sh
|
||||
|
||||
# Copy the Python startup stuff into the container
|
||||
COPY ./setup-scripts /setup-scripts
|
||||
|
||||
# Copy the snapshot server Python code into the container
|
||||
COPY ./snapshot-server /snapshot-server
|
||||
|
||||
# | Port | Purpose |
|
||||
# | ---- | ------------------------------------------------------------------- |
|
||||
# | 8200 | Vault API |
|
||||
# | 8300 | Custom snapshot server (for creating and serving backups over HTTP) |
|
||||
EXPOSE 8200 8300
|
||||
|
||||
ENTRYPOINT ["/bin/bash", "/entrypoint.sh"]
|
||||
Loading…
Add table
Add a link
Reference in a new issue