mirror of
https://github.com/element-hq/synapse.git
synced 2024-12-19 09:31:35 +03:00
dockerfile update
This commit is contained in:
parent
b7962f5bfd
commit
43cf23475f
2 changed files with 3 additions and 69 deletions
|
@ -236,12 +236,12 @@ steps:
|
|||
|
||||
- wait
|
||||
|
||||
- label: "Docker Build -- Optimised Skylake-AVX512"
|
||||
- label: ":docker: x86_64"
|
||||
agents:
|
||||
queue: "release"
|
||||
branches: "shhs-*"
|
||||
command:
|
||||
- "docker build -f docker/Dockerfile-optimised --build-arg PYTHON_VERSION=3.7.4 --build-arg MARCH=skylake-avx512 . -t matrixdotorg/synapse:${BUILDKITE_TAG}-skylake-avx512"
|
||||
- "docker save matrixdotorg/synapse:${BUILDKITE_TAG}-skylake-avx512 | gzip -9 > docker.tar.gz"
|
||||
- "docker build -f docker/Dockerfile --build-arg PYTHON_VERSION=3.7.4 . -t matrixdotorg/synapse:${BUILDKITE_TAG}"
|
||||
- "docker save matrixdotorg/synapse:${BUILDKITE_TAG} | gzip -9 > docker.tar.gz"
|
||||
artifact_paths:
|
||||
- "docker.tar.gz"
|
|
@ -1,66 +0,0 @@
|
|||
# Dockerfile to build the matrixdotorg/synapse docker images.
|
||||
#
|
||||
# To build the image, run `docker build` command from the root of the
|
||||
# synapse repository:
|
||||
#
|
||||
# docker build -f docker/Dockerfile .
|
||||
#
|
||||
# There is an optional PYTHON_VERSION build argument which sets the
|
||||
# version of python to build against: for example:
|
||||
#
|
||||
# docker build -f docker/Dockerfile --build-arg PYTHON_VERSION=3.6 --build-arg MARCH=skylake-avx512 .
|
||||
#
|
||||
|
||||
ARG PYTHON_VERSION=3.7.4
|
||||
ARG MARCH=skylake-avx512
|
||||
|
||||
###
|
||||
### Stage 0: builder
|
||||
###
|
||||
FROM matrixdotorg/optimised-python:${PYTHON_VERSION}-optimized-lto-${MARCH} as builder
|
||||
|
||||
# install the OS build deps
|
||||
|
||||
RUN apt-get update && apt-get install -y build-essential libpq-dev libffi-dev libexpat1-dev libxml2-dev libxslt-dev
|
||||
|
||||
# build things which have slow build steps, before we copy synapse, so that
|
||||
# the layer can be cached.
|
||||
#
|
||||
# (we really just care about caching a wheel here, as the "pip install" below
|
||||
# will install them again.)
|
||||
|
||||
RUN pip install --prefix="/install" --no-warn-script-location \
|
||||
cryptography \
|
||||
msgpack-python \
|
||||
pillow \
|
||||
pynacl
|
||||
|
||||
# now install synapse and all of the python deps to /install.
|
||||
|
||||
COPY synapse /synapse/synapse/
|
||||
COPY scripts /synapse/scripts/
|
||||
COPY MANIFEST.in README.rst setup.py synctl /synapse/
|
||||
|
||||
RUN pip install --prefix="/install" --no-warn-script-location \
|
||||
/synapse[all]
|
||||
|
||||
RUN chown -R root:root /usr/local /install
|
||||
|
||||
###
|
||||
### Stage 1: runtime
|
||||
###
|
||||
|
||||
FROM matrixdotorg/optimised-python:${PYTHON_VERSION}-optimized-lto-${MARCH}
|
||||
|
||||
# xmlsec is required for saml support
|
||||
RUN apt-get update && apt-get install -y libpq5 xmlsec1 libxslt1.1
|
||||
|
||||
COPY --from=builder /install /usr/local
|
||||
COPY ./docker/start.py /start.py
|
||||
COPY ./docker/conf /conf
|
||||
|
||||
VOLUME ["/data"]
|
||||
|
||||
EXPOSE 8008/tcp 8009/tcp 8448/tcp
|
||||
|
||||
ENTRYPOINT ["/start.py"]
|
Loading…
Reference in a new issue