无法在 Dockerfile 中获取 tmux 配置文件
Cannot source tmux config file in a Dockerfile
我在需要 tmux 的地方构建一个 Docker 图像,而不是每次启动容器时都必须 运行 tmux source-file ~/.tmux.conf
(疯狂的谎言),我想要在构建时获取配置文件。但是,这不起作用:
ARG PYTORCH="1.6.0"
ARG CUDA="10.1"
ARG CUDNN="7"
FROM pytorch/pytorch:${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}-devel
RUN apt-get update && apt-get install -y man-db manpages-posix vim screen tmux\
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# configuration for tmux
COPY src/.tmux.conf ~/.tmux.conf
RUN tmux source-file ~/.tmux.conf
我收到错误:
error connecting to /tmp/tmux-0/default (No such file or directory)
The command '/bin/sh -c tmux source-file ~/.tmux.conf' returned a non-zero code: 1
发生了什么事?这似乎不是 file not found
错误。
没有 tmux 服务器 运行ning(根本没有服务器 运行ning,因此缺少文件)。当您在容器中 运行 tmux 时,配置文件将自动加载,因此可以删除失败的行
此外,docker 不会扩展 ~
,因此您需要提供绝对路径。生成的 Dockerfile 应该看起来像这样,假设您 运行 在容器中以 root 用户身份运行:
ARG PYTORCH="1.6.0"
ARG CUDA="10.1"
ARG CUDNN="7"
FROM pytorch/pytorch:${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}-devel
RUN apt-get update && apt-get install -y man-db manpages-posix vim screen tmux\
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# configuration for tmux
COPY src/.tmux.conf /root/.tmux.conf
我在需要 tmux 的地方构建一个 Docker 图像,而不是每次启动容器时都必须 运行 tmux source-file ~/.tmux.conf
(疯狂的谎言),我想要在构建时获取配置文件。但是,这不起作用:
ARG PYTORCH="1.6.0"
ARG CUDA="10.1"
ARG CUDNN="7"
FROM pytorch/pytorch:${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}-devel
RUN apt-get update && apt-get install -y man-db manpages-posix vim screen tmux\
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# configuration for tmux
COPY src/.tmux.conf ~/.tmux.conf
RUN tmux source-file ~/.tmux.conf
我收到错误:
error connecting to /tmp/tmux-0/default (No such file or directory)
The command '/bin/sh -c tmux source-file ~/.tmux.conf' returned a non-zero code: 1
发生了什么事?这似乎不是 file not found
错误。
没有 tmux 服务器 运行ning(根本没有服务器 运行ning,因此缺少文件)。当您在容器中 运行 tmux 时,配置文件将自动加载,因此可以删除失败的行
此外,docker 不会扩展 ~
,因此您需要提供绝对路径。生成的 Dockerfile 应该看起来像这样,假设您 运行 在容器中以 root 用户身份运行:
ARG PYTORCH="1.6.0"
ARG CUDA="10.1"
ARG CUDNN="7"
FROM pytorch/pytorch:${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}-devel
RUN apt-get update && apt-get install -y man-db manpages-posix vim screen tmux\
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# configuration for tmux
COPY src/.tmux.conf /root/.tmux.conf