fanyi 这个小工具,以前是直接跑在腾讯云的轻量服务器上的,用 Golang 写的,最近加了一个小功能,用 php 重写了,php 就要搭建各种环境,直接在腾讯云的轻量服务器上编译 php 不成功,主要是你 cpu 高,他就直接给你 kill 了,所以就用 docker 来解决。
构建 PHP 的运行环境
从 php:8.1-fpm 开始构建,安装上相关依赖,然后设置运行用户的相关权限。
1 |
vim Dockerfile |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
FROM php:8.1-fpm # Arguments defined in docker-compose.yml ARG user ARG uid # Install system dependencies RUN apt-get update && apt-get install -y \ git \ curl \ libpng-dev \ libonig-dev \ libxml2-dev \ zip \ unzip # Clear cache RUN apt-get clean && rm -rf /var/lib/apt/lists/* # Install PHP extensions RUN docker-php-ext-install pdo_mysql mbstring exif pcntl bcmath gd # Get latest Composer COPY --from=composer:latest /usr/bin/composer /usr/bin/composer # Create system user to run Composer and Artisan Commands RUN useradd -G www-data,root -u $uid -d /home/$user $user RUN mkdir -p /home/$user/.composer && \ chown -R $user:$user /home/$user # Set working directory WORKDIR /var/www USER $user |