Several bugfixes in Docker build
- Removed unnecessary variables - Fixed symbolic links creation - Fixed enter point - Less intermediate containers
This commit is contained in:
Родитель
655b69cb1f
Коммит
3e7d8db7a2
12
Dockerfile
12
Dockerfile
|
@ -9,21 +9,13 @@ RUN echo "@edge http://dl-4.alpinelinux.org/alpine/edge/main" | tee -a /etc/apk/
|
||||||
&& apk -U --no-progress add ca-certificates bash git linux-pam s6@edge curl openssh socat \
|
&& apk -U --no-progress add ca-certificates bash git linux-pam s6@edge curl openssh socat \
|
||||||
&& chmod +x /usr/sbin/gosu
|
&& chmod +x /usr/sbin/gosu
|
||||||
|
|
||||||
# Configure Go and build Gogs
|
ENV GOGS_CUSTOM /data/gogs
|
||||||
ENV GOPATH /tmp/go
|
|
||||||
ENV PATH $PATH:$GOPATH/bin
|
|
||||||
|
|
||||||
COPY . /app/gogs/
|
COPY . /app/gogs/
|
||||||
WORKDIR /app/gogs/
|
WORKDIR /app/gogs/
|
||||||
RUN ./docker/build.sh
|
RUN ./docker/build.sh
|
||||||
|
|
||||||
ENV GOGS_CUSTOM /data/gogs
|
|
||||||
|
|
||||||
# Create git user for Gogs
|
|
||||||
RUN adduser -D -g 'Gogs Git User' git -h /data/git/ -s /bin/sh && passwd -u git
|
|
||||||
RUN echo "export GOGS_CUSTOM=/data/gogs" >> /etc/profile
|
|
||||||
|
|
||||||
# Configure Docker Container
|
# Configure Docker Container
|
||||||
VOLUME ["/data"]
|
VOLUME ["/data"]
|
||||||
EXPOSE 22 3000
|
EXPOSE 22 3000
|
||||||
CMD ["./docker/start.sh"]
|
CMD ["docker/start.sh"]
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Set temp environment vars
|
||||||
|
export GOPATH=/tmp/go
|
||||||
|
export PATH=${PATH}:${GOPATH}/bin
|
||||||
|
|
||||||
# Install build deps
|
# Install build deps
|
||||||
apk -U --no-progress add linux-pam-dev go@community gcc musl-dev
|
apk -U --no-progress add linux-pam-dev go@community gcc musl-dev
|
||||||
|
|
||||||
|
@ -15,3 +19,7 @@ rm -r $GOPATH
|
||||||
|
|
||||||
# Remove build deps
|
# Remove build deps
|
||||||
apk --no-progress del linux-pam-dev go gcc musl-dev
|
apk --no-progress del linux-pam-dev go gcc musl-dev
|
||||||
|
|
||||||
|
# Create git user for Gogs
|
||||||
|
adduser -H -D -g 'Gogs Git User' git -h /data/git -s /bin/bash && passwd -u git
|
||||||
|
echo "export GOGS_CUSTOM=${GOGS_CUSTOM}" >> /etc/profile
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
USER=git
|
USER=git
|
||||||
USERNAME=$USER
|
|
||||||
|
|
||||||
if ! test -d /data/gogs; then
|
if ! test -d /data/gogs; then
|
||||||
mkdir -p /data/gogs/data /data/gogs/conf /data/gogs/log /data/git
|
mkdir -p /data/gogs/data /data/gogs/conf /data/gogs/log /data/git
|
||||||
|
@ -12,17 +11,16 @@ if ! test -d ~git/.ssh; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! test -f ~git/.ssh/environment; then
|
if ! test -f ~git/.ssh/environment; then
|
||||||
echo "GOGS_CUSTOM=/data/gogs" > ~git/.ssh/environment
|
echo "GOGS_CUSTOM=${GOGS_CUSTOM}" > ~git/.ssh/environment
|
||||||
chown git:git ~git/.ssh/environment
|
chmod 600 ~git/.ssh/environment
|
||||||
chown 600 ~git/.ssh/environment
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
ln -sf /data/gogs/log /app/gogs/log
|
cd /app/gogs
|
||||||
ln -sf /data/gogs/data /app/gogs/data
|
|
||||||
ln -sf /data/gogs/conf /app/gogs/conf
|
ln -sf /data/gogs/log ./log
|
||||||
|
ln -sf /data/gogs/data ./data
|
||||||
|
|
||||||
chown -R git:git /data /app/gogs ~git/
|
chown -R git:git /data /app/gogs ~git/
|
||||||
|
|
||||||
export USER
|
export USER
|
||||||
export USERNAME
|
|
||||||
exec gosu $USER /app/gogs/gogs web
|
exec gosu $USER /app/gogs/gogs web
|
||||||
|
|
Загрузка…
Ссылка в новой задаче