coteerratu commited on
Commit
d6a8f33
·
verified ·
1 Parent(s): 191b4e0

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +32 -12
Dockerfile CHANGED
@@ -1,17 +1,37 @@
1
- # 使用官方的 Node.js 镜像作为基础
2
- FROM node:18
3
 
4
- # 设置工作目录
5
- WORKDIR /app
 
 
 
 
6
 
7
- # 更新apt并安装sudo
8
- RUN apt-get update && apt-get install -y sudo
9
 
10
- # 安装wetty
11
- RUN npm install -g wetty
12
 
13
- # 暴露端口号
14
- EXPOSE 3000
 
 
 
15
 
16
- # 启动wetty服务
17
- CMD ["wetty", "--port", "3000"]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # 使用Ubuntu作为基础镜像
2
+ FROM ubuntu:latest
3
 
4
+ # 更新包列表并安装必要的软件包
5
+ RUN apt-get update && apt-get install -y \
6
+ bash \
7
+ wget \
8
+ ca-certificates \
9
+ sudo
10
 
11
+ RUN apt-get clean && rm -rf /var/lib/apt/lists/*
 
12
 
13
+ # 创建 /data 目录并赋予用户 1001 权限
14
+ RUN mkdir -p /data && chown -R 1001:1001 /data
15
 
16
+ # 下载并安装 gotty
17
+ RUN wget -O gotty.tar.gz https://github.com/yudai/gotty/releases/download/v1.0.1/gotty_linux_amd64.tar.gz \
18
+ && tar -xzvf gotty.tar.gz -C /usr/local/bin/ \
19
+ && chmod +x /usr/local/bin/gotty \
20
+ && rm gotty.tar.gz
21
 
22
+ # 创建用户 1001 并设置工作目录
23
+ RUN useradd -u 1001 -d /data user1001 \
24
+ && echo 'user1001 ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers.d/user1001
25
+
26
+ # 切换到用户 1001 并设置工作目录
27
+ USER 1001
28
+ WORKDIR /data
29
+
30
+ # 创建 .bashrc 文件并设置 PS1 环境变量
31
+ RUN echo 'PS1="online-terminal:\\w\\$ "' > /data/.bashrc
32
+
33
+ # 暴露端口
34
+ EXPOSE 8080
35
+
36
+ # 使用 gotty 运行 bash,并修改 PS1 环境变量
37
+ CMD ["gotty", "--permit-write", "--port", "3000", "--permit-arguments", "/bin/bash", "--rcfile", "/data/.bashrc"]