Files
build/ubuntu-12.04-build-env/Dockerfile
2025-03-10 10:16:38 +08:00

89 lines
2.1 KiB
Docker

# 使用 Ubuntu 12.04 作为基础镜像
FROM ubuntu:12.04
# 设置环境变量以避免交互式安装
ENV DEBIAN_FRONTEND=noninteractive
# 更新包列表并安装必要的软件包
RUN sed -i 's|http://archive.ubuntu.com/ubuntu|http://old-releases.ubuntu.com/ubuntu|g' /etc/apt/sources.list && \
apt-get update && \
apt-get install -y \
openssh-client \
bzip2 \
build-essential \
cmake \
curl \
g++ \
gcc \
git \
gzip \
libgcrypt11-dev \
libglib2.0-dev \
libgnutls-dev \
libhiredis-dev \
libidn11-dev \
libssl-dev \
libsctp-dev \
libmysqlclient-dev \
make \
sed \
sudo \
tar \
unzip \
vim \
wget \
xz-utils \
zlib1g-dev \
autoconf \
automake \
libtool \
#binutils \
#libzstd-dev \
libidn2-0-dev && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
# 下载并编译 zstd 库
RUN wget https://github.com/facebook/zstd/archive/refs/tags/v1.4.9.tar.gz && \
tar -xzf v1.4.9.tar.gz && \
cd zstd-1.4.9 && \
make && \
make install && \
cd .. && \
rm -rf zstd-1.4.9 v1.4.9.tar.gz
# 下载并编译 binutils 库
RUN wget https://ftp.gnu.org/gnu/binutils/binutils-2.36.1.tar.gz && \
tar -xzf binutils-2.36.1.tar.gz && \
cd binutils-2.36.1 && \
./configure && \
make && \
make install && \
cd .. && \
rm -rf binutils-2.36.1 binutils-2.36.1.tar.gz
# 创建一个用户并设置密码
RUN useradd -ms /bin/bash simon && echo "simon:admin123" | chpasswd && adduser simon sudo
# 生成 SSH 密钥对
RUN mkdir -p /home/simon/.ssh && \
ssh-keygen -t ecdsa -b 521 -f /home/simon/.ssh/id_ecdsa -N "" -C "simon@ubuntu12.dev" && \
ssh-keyscan -t ecdsa -H 192.168.2.166 >> /home/simon/.ssh/known_hosts && \
chown -R simon:simon /home/simon/.ssh
# 打印公钥,方便添加到 Gitea 服务器
RUN cat /home/simon/.ssh/id_ecdsa.pub
# 切换到新用户
USER simon
WORKDIR /home/simon
# 复制项目文件到容器中(如果有)
#COPY ../ocs.git /home/simon/
# 设置工作目录
WORKDIR /home/simon
# 默认命令
CMD ["/bin/bash"]