Compare commits

...

1 Commits

Author SHA1 Message Date
0b79111ec0 更新 docker/Dockerfile.webTerminal
Some checks failed
DevStar Studio CI/CD Pipeline / DevStarStudio-CICD-Pipeline (pull_request) Has been cancelled
devstar后端的日志信息:
2026/01/06 11:36:10 .../devcontainer/devcontainer.go:37:GetDevContainerDetails() [I] setting.CustomConf /etc/gitea/app.ini
2026/01/06 11:36:10 .../devcontainer/devcontainer.go:38:GetDevContainerDetails() [I] cfg.Section().Key().Value() http://192.168.181.128/
2026/01/06 11:36:10 .../devcontainer/devcontainer.go:94:HasDevContainerDockerFile() [I] &{template [8080] map[] map[] map[NODE_ENV:development] map[]   false  false  false false [] [] [] map[] [] map[] ubuntu:latest <nil> <nil>   [-p 8888] []  [] echo "initializeCommand"; [echo "onCreateCommand"; echo "onCreateCommand";] <nil> [echo "postCreateCommand" echo "OK"] <nil> [echo "postAttachCommand" echo "OK"]  <nil>}
2026/01/06 11:36:10 HTTPRequest [I] router: completed GET /niko/niko/devcontainer for 192.168.181.128:49354, 200 OK in 46.0ms @ devcontainer/devcontainer.go:25(devcontainer.GetDevContainerDetails)
2026/01/06 11:36:15 .../devcontainer/devcontainer.go:232:GetDevContainerStatus() [I] GetDevContainerStatus: Starting - userID: 1, repoID: 1
2026/01/06 11:36:15 .../devcontainer/devcontainer.go:254:GetDevContainerStatus() [I] GetDevContainerStatus: Database query result - id: 0, containerName: , status: 0
2026/01/06 11:36:15 .../devcontainer/devcontainer.go:257:GetDevContainerStatus() [I] GetDevContainerStatus: No devcontainer found, returning -1
2026/01/06 11:36:15 HTTPRequest [I] router: completed GET /niko/niko/devcontainer/status for 192.168.181.128:49354, 200 OK in 4.0ms @ devcontainer/devcontainer.go:174(devcontainer.GetDevContainerStatus)
2026/01/06 11:36:16 HTTPRequest [I] router: completed GET /niko/niko/devcontainer/create? for 192.168.181.128:49354, 303 See Other in 5.7ms @ devcontainer/devcontainer.go:271(devcontainer.CreateDevContainer)
2026/01/06 11:36:16 .../devcontainer/devcontainer.go:37:GetDevContainerDetails() [I] setting.CustomConf /etc/gitea/app.ini
2026/01/06 11:36:16 .../devcontainer/devcontainer.go:38:GetDevContainerDetails() [I] cfg.Section().Key().Value() http://192.168.181.128/
2026/01/06 11:36:16 .../devcontainer/devcontainer.go:94:HasDevContainerDockerFile() [I] &{template [8080] map[] map[] map[NODE_ENV:development] map[]   false  false  false false [] [] [] map[] [] map[] ubuntu:latest <nil> <nil>   [-p 8888] []  [] echo "initializeCommand"; [echo "onCreateCommand"; echo "onCreateCommand";] <nil> [echo "postCreateCommand" echo "OK"] <nil> [echo "postAttachCommand" echo "OK"]  <nil>}
2026/01/06 11:36:16 .../devcontainer/devcontainer.go:75:GetDevContainerDetails() [I] ubuntu latest
2026/01/06 11:36:16 .../docker/docker_api.go:23:CreateDockerClient() [I] 检查 Docker 环境
2026/01/06 11:36:16 .../docker/docker_api.go:29:CreateDockerClient() [I] dockerSocketPath: unix:///var/run/docker.sock
2026/01/06 11:36:16 .../docker/docker_api.go:23:CreateDockerClient() [I] 检查 Docker 环境
2026/01/06 11:36:16 .../docker/docker_api.go:29:CreateDockerClient() [I] dockerSocketPath: unix:///var/run/docker.sock
2026/01/06 11:36:16 .../docker/docker_api.go:23:CreateDockerClient() [I] 检查 Docker 环境
2026/01/06 11:36:16 .../docker/docker_api.go:29:CreateDockerClient() [I] dockerSocketPath: unix:///var/run/docker.sock
2026/01/06 11:36:16 .../docker/docker_api.go:211:GetMappedPort() [I] 容器端口 7681/tcp 映射到主机 0.0.0.0 端口 32779 
2026/01/06 11:36:16 .../devcontainer/devcontainer.go:1232:Get_IDE_TerminalURL() [I] Get_IDE_TerminalURL: 配置文件加载成功, ROOT_URL=http://192.168.181.128/
2026/01/06 11:36:16 .../docker/docker_api.go:23:CreateDockerClient() [I] 检查 Docker 环境
2026/01/06 11:36:16 .../docker/docker_api.go:29:CreateDockerClient() [I] dockerSocketPath: unix:///var/run/docker.sock
2026/01/06 11:36:16 HTTPRequest [I] router: completed GET /niko/niko/devcontainer for 192.168.181.128:49354, 200 OK in 82.1ms @ devcontainer/devcontainer.go:25(devcontainer.GetDevContainerDetails)
2026/01/06 11:36:17 .../devcontainer/devcontainer.go:232:GetDevContainerStatus() [I] GetDevContainerStatus: Starting - userID: 1, repoID: 1
2026/01/06 11:36:17 .../devcontainer/devcontainer.go:254:GetDevContainerStatus() [I] GetDevContainerStatus: Database query result - id: 1, containerName: niko-niko-e9c1bd0deaf311f, status: 0
2026/01/06 11:36:17 .../devcontainer/devcontainer.go:262:GetDevContainerStatus() [I] GetDevContainerStatus: Initial realTimeStatus: 0
2026/01/06 11:36:17 .../devcontainer/devcontainer.go:395:GetDevContainerStatus() [I] other status
2026/01/06 11:36:17 .../devcontainer/devcontainer.go:443:GetDevContainerStatus() [I] GetDevContainerStatus: Final realTimeStatus: 0, returning status string
2026/01/06 11:36:17 HTTPRequest [I] router: completed GET /niko/niko/devcontainer/status?repo=1&user=1 for 192.168.181.128:53314, 200 OK in 3.0ms @ devcontainer/devcontainer.go:174(devcontainer.GetDevContainerStatus)
2026-01-07 01:45:12 +00:00

View File

@@ -1,42 +1,49 @@
FROM docker.io/library/ubuntu:24.04 AS build-env FROM docker.io/library/alpine:3.22 AS build-env
RUN echo "https://mirrors.ustc.edu.cn/alpine/v3.22/main" > /etc/apk/repositories && \
echo "https://mirrors.ustc.edu.cn/alpine/v3.22/community" >> /etc/apk/repositories
RUN apt-get update && \ RUN apk add --no-cache \
apt-get install -y \ build-base \
git \
build-essential \
cmake \ cmake \
libjson-c-dev \ git \
libwebsockets-dev linux-headers \
libwebsockets-dev \
json-c-dev \
openssl-dev \
zlib-dev \
libuv-dev \
vim
RUN git clone https://devstar.cn/devstar/webTerminal.git /home/webTerminal RUN git clone https://devstar.cn/devstar/webTerminal.git /home/webTerminal
# 设置工作目录并构建
WORKDIR /home/webTerminal/build WORKDIR /home/webTerminal/build
RUN cmake .. RUN cmake ..
RUN make && make install RUN make && make install
FROM docker.io/library/alpine:3.22
FROM ubuntu:24.04
# 从构建阶段复制编译好的程序
COPY --from=build-env /home/webTerminal/build/ttyd /home/webTerminal/build/ttyd COPY --from=build-env /home/webTerminal/build/ttyd /home/webTerminal/build/ttyd
# 只安装运行时需要的库 RUN echo "https://mirrors.ustc.edu.cn/alpine/v3.22/main" > /etc/apk/repositories && \
RUN apt-get update && \ echo "https://mirrors.ustc.edu.cn/alpine/v3.22/community" >> /etc/apk/repositories
apt-get install -y \
curl && \
curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc && \
apt-get install -y tini \
libjson-c-dev \
libwebsockets-dev && \
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/ \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
tee /etc/apt/sources.list.d/docker.list > /dev/null && \
apt-get update && apt-get install -y docker-ce-cli && \
apt remove --purge curl -y && apt autoremove -y && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
ENTRYPOINT ["/usr/bin/tini", "--"] RUN apk add --no-cache \
bash \
git \
openssh \
openssh-server \
openssh-client \
openssh-keygen \
docker-cli \
tini \
json-c \
libwebsockets \
libwebsockets-evlib_uv \
libuv \
curl
ENTRYPOINT ["/sbin/tini", "--"]
CMD ["/home/webTerminal/build/ttyd", "-W", "bash"] CMD ["/home/webTerminal/build/ttyd", "-W", "bash"]
# To acquire devstar.cn/devstar/webterminal:latest: # To acquire devstar.cn/devstar/webterminal:latest: