-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
69 lines (61 loc) · 1.85 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
###################################
# Google Cloud Project SDK Docker #
###################################
# Based on...
FROM google/cloud-sdk:latest
# File Author / Maintainer
LABEL maintainer="ebelter@wustl.edu"
# Args
ARG username=ebelter
# Deps
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
less \
libnss-sss \
sudo \
vim && \
apt-get clean
# Upgrade Components
RUN sudo apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get --only-upgrade install -y --no-install-recommends \
kubectl \
google-cloud-sdk \
google-cloud-sdk-app-engine-grpc \
google-cloud-sdk-pubsub-emulator \
google-cloud-sdk-app-engine-go \
google-cloud-sdk-datastore-emulator \
google-cloud-sdk-app-engine-python \
google-cloud-sdk-cbt \
google-cloud-sdk-bigtable-emulator \
google-cloud-sdk-app-engine-python-extras \
google-cloud-sdk-datalab \
google-cloud-sdk-app-engine-java
# HL CLOUD
WORKDIR /tmp/hl-cloud/
COPY setup.py README.cli LICENSE hlcloud/ ./
COPY hlcloud/ hlcloud/
RUN pip3 install ./
WORKDIR /tmp/
RUN rm -rf hl-cloud/
# Cloudy User
RUN useradd -Ms /bin/bash cloudy -G staff
RUN echo "cloudy ALL=(ALL:ALL) NOPASSWD: ALL" | sudo EDITOR='tee -a' visudo
WORKDIR /home/cloudy
COPY resources/homedir ./
RUN chown -R cloudy /home/cloudy/ && \
chgrp -R cloudy /home/cloudy/ && \
find ./ -type d -exec chmod 777 {} \; && \
find ./ -type f -exec chmod 666 {} \;
# Environment
WORKDIR /etc/profile.d/
COPY resources/etc/hlcloud.sh ./
ENV HOME=/home/cloudy \
TZ='America/Chicago' \
LSF_SERVERDIR=/opt/lsf9/9.1/linux2.6-glibc2.3-x86_64/etc \
LSF_LIBDIR=/opt/lsf9/9.1/linux2.6-glibc2.3-x86_64/lib \
LSF_BINDIR=/opt/lsf9/9.1/linux2.6-glibc2.3-x86_64/bin \
LSF_ENVDIR=/opt/lsf9/conf \
PATH="/opt/lsf9/9.1/linux2.6-glibc2.3-x86_64/bin:${PATH}"
USER cloudy
WORKDIR /home/cloudy
CMD [ /bin/bash ]