feat: add ubuntu 12.04 docker build env
This commit is contained in:
20
bin/build.sh
20
bin/build.sh
@@ -142,13 +142,25 @@ esac
|
|||||||
|
|
||||||
make_ocs_bin()
|
make_ocs_bin()
|
||||||
{
|
{
|
||||||
cd $src_ocs_dir
|
|
||||||
echo -n "make clean ... "
|
|
||||||
make clean 1>/dev/null 2>&1
|
|
||||||
echo "done"
|
|
||||||
if [ -z $bin_tag ]; then
|
if [ -z $bin_tag ]; then
|
||||||
bin_tag="pncc"
|
bin_tag="pncc"
|
||||||
fi
|
fi
|
||||||
|
cd $src_ocs_dir
|
||||||
|
if [ $bin_tag = "cook" ]; then
|
||||||
|
if [ $rel_os = "ub22" ]; then
|
||||||
|
echo "Ubuntu 22.04 is not supported"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
git checkout cook
|
||||||
|
git pull
|
||||||
|
else
|
||||||
|
git checkout main
|
||||||
|
git pull
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -n "make clean ... "
|
||||||
|
make clean 1>/dev/null 2>&1
|
||||||
|
echo "done"
|
||||||
echo -n "make $bin_tag $pkg_type ... "
|
echo -n "make $bin_tag $pkg_type ... "
|
||||||
make ${bin_tag} 1>make.log 2>&1
|
make ${bin_tag} 1>make.log 2>&1
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
|
|||||||
88
ubuntu-12.04-build-env/Dockerfile
Normal file
88
ubuntu-12.04-build-env/Dockerfile
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
# 使用 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"]
|
||||||
15
ubuntu-12.04-build-env/docker-compose.yml
Normal file
15
ubuntu-12.04-build-env/docker-compose.yml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
services:
|
||||||
|
ubuntu12-dev:
|
||||||
|
image: ubuntu:12.04
|
||||||
|
build:
|
||||||
|
context: .
|
||||||
|
#dockerfile: Dockerfile
|
||||||
|
container_name: ubuntu12-dev
|
||||||
|
volumes:
|
||||||
|
- /home/simon/ocs.git:/home/simon/ocs.git
|
||||||
|
#- /home/simon/.ssh:/home/simon/.ssh
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
tty: true
|
||||||
|
stdin_open: true
|
||||||
|
command: tail -f /dev/null
|
||||||
Reference in New Issue
Block a user