Update Dockerfile
Browse files- Dockerfile +16 -4
Dockerfile
CHANGED
|
@@ -2,19 +2,31 @@ FROM codercom/code-server:latest
|
|
| 2 |
|
| 3 |
USER root
|
| 4 |
|
| 5 |
-
#
|
| 6 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 7 |
|
| 8 |
USER coder
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 9 |
WORKDIR /data
|
| 10 |
|
| 11 |
EXPOSE 7860
|
| 12 |
|
| 13 |
-
# ВАЖНО: Все аргументы строго разделены запятыми и кавычками
|
| 14 |
CMD ["code-server", \
|
| 15 |
"--bind-addr", "0.0.0.0:7860", \
|
| 16 |
"--auth", "password", \
|
| 17 |
"--config", "/data/.vscode/config.yaml", \
|
| 18 |
"--user-data-dir", "/data/.vscode/user-data", \
|
| 19 |
"--extensions-dir", "/data/.vscode/extensions", \
|
| 20 |
-
"/data"]
|
|
|
|
| 2 |
|
| 3 |
USER root
|
| 4 |
|
| 5 |
+
# Копируем дефолтные конфиги/скелетон HOME из образа в /data при первом старте,
|
| 6 |
+
# создаём нужные подпапки и отдаём всё владельцу coder
|
| 7 |
+
RUN mkdir -p /data && \
|
| 8 |
+
cp -r /home/coder/. /data/ 2>/dev/null || true && \
|
| 9 |
+
mkdir -p /data/.vscode/user-data /data/.vscode/extensions /data/.local/bin /data/.local/share /data/.cache /data/.config && \
|
| 10 |
+
chown -R coder:coder /data
|
| 11 |
|
| 12 |
USER coder
|
| 13 |
+
|
| 14 |
+
# Переопределяем HOME — всё, что обычно пишется в ~ (git config, ssh, history,
|
| 15 |
+
# кэши расширений, npm/pip user-installs), теперь живёт в /data
|
| 16 |
+
ENV HOME=/data
|
| 17 |
+
ENV PATH=/data/.local/bin:$PATH
|
| 18 |
+
ENV XDG_CACHE_HOME=/data/.cache
|
| 19 |
+
ENV XDG_CONFIG_HOME=/data/.config
|
| 20 |
+
ENV XDG_DATA_HOME=/data/.local/share
|
| 21 |
+
|
| 22 |
WORKDIR /data
|
| 23 |
|
| 24 |
EXPOSE 7860
|
| 25 |
|
|
|
|
| 26 |
CMD ["code-server", \
|
| 27 |
"--bind-addr", "0.0.0.0:7860", \
|
| 28 |
"--auth", "password", \
|
| 29 |
"--config", "/data/.vscode/config.yaml", \
|
| 30 |
"--user-data-dir", "/data/.vscode/user-data", \
|
| 31 |
"--extensions-dir", "/data/.vscode/extensions", \
|
| 32 |
+
"/data"]
|