47 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
		
		
			
		
	
	
			47 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
| 
								 | 
							
								# Default Dockerfile
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# @link     https://www.hyperf.io
							 | 
						||
| 
								 | 
							
								# @document https://hyperf.wiki
							 | 
						||
| 
								 | 
							
								# @contact  group@hyperf.io
							 | 
						||
| 
								 | 
							
								# @license  https://github.com/hyperf-cloud/hyperf/blob/master/LICENSE
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ARG PHP_VERSION
							 | 
						||
| 
								 | 
							
								ARG ALPINE_VERSION
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								FROM hyperf/hyperf:${PHP_VERSION}-alpine-${ALPINE_VERSION}-swoole
							 | 
						||
| 
								 | 
							
								LABEL maintainer="Hyperf Developers <group@hyperf.io>" version="1.0" license="MIT" app.name="Hyperf"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ARG timezone
							 | 
						||
| 
								 | 
							
								ARG PHP_VERSION
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ENV TIMEZONE=${timezone:-"Asia/Shanghai"}
							 | 
						||
| 
								 | 
							
								ENV COMPOSER_ROOT_VERSION="v1.2.0"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# update
							 | 
						||
| 
								 | 
							
								RUN set -ex \
							 | 
						||
| 
								 | 
							
								    # show php version and extensions
							 | 
						||
| 
								 | 
							
								    && php -v \
							 | 
						||
| 
								 | 
							
								    && php -m \
							 | 
						||
| 
								 | 
							
								    && php --ri swoole \
							 | 
						||
| 
								 | 
							
								    #  ---------- some config ----------
							 | 
						||
| 
								 | 
							
								    && cd "/etc/php${PHP_VERSION%\.*}" \
							 | 
						||
| 
								 | 
							
								    # - config PHP
							 | 
						||
| 
								 | 
							
								    && { \
							 | 
						||
| 
								 | 
							
								        echo "upload_max_filesize=128M"; \
							 | 
						||
| 
								 | 
							
								        echo "post_max_size=128M"; \
							 | 
						||
| 
								 | 
							
								        echo "memory_limit=1G"; \
							 | 
						||
| 
								 | 
							
								        echo "date.timezone=${TIMEZONE}"; \
							 | 
						||
| 
								 | 
							
								    } | tee conf.d/99_overrides.ini \
							 | 
						||
| 
								 | 
							
								    # - config timezone
							 | 
						||
| 
								 | 
							
								    && ln -sf /usr/share/zoneinfo/${TIMEZONE} /etc/localtime \
							 | 
						||
| 
								 | 
							
								    && echo "${TIMEZONE}" > /etc/timezone \
							 | 
						||
| 
								 | 
							
								    # ---------- clear works ----------
							 | 
						||
| 
								 | 
							
								    && rm -rf /var/cache/apk/* /tmp/* /usr/share/man \
							 | 
						||
| 
								 | 
							
								    && echo -e "\033[42;37m Build Completed :).\033[0m\n"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								WORKDIR /opt/www
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								COPY . /opt/www
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								RUN composer install -o
							 |