일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- list
- Package
- pandas
- GitLab
- KAKAO
- AI
- evaluation
- numpy
- Container
- Windows
- LLM
- Flask
- DB
- Mac
- file
- docker
- Laravel
- judge
- format
- Converting
- Paper
- git
- Linux
- TORCH
- enV
- pytorch
- CUDA
- Python
- Database
- PostgreSQL
Archives
- Today
- Total
Daily Develope
[Docker] Dockerfile 샘플 (PHP 환경 구축) 본문
ㅇ PHP 개발환경 구축
FROM ubuntu:focal
ENV CLIENT_HOME="/opt/dat"
ENV TZ="Asia/Seoul"
ENV MY_GIT="https://giturl"
# apt mirror
WORKDIR /etc/apt/
RUN sed -i 's/archive.ubuntu.com/mirror.kakao.com/g' sources.list
RUN sed -i 's/security.ubuntu.com/mirror.kakao.com/g' sources.list
# install pckgs. (with timezone)
RUN apt-get update -y
RUN ln -snf /usr/share/zoneinfo/${TZ} /etc/localtime && echo $TZ > /etc/timezone
RUN apt-get install -y vim net-tools iputils-ping
RUN apt-get install -y git
RUN apt-get install -y android-tools-adb android-tools-fastboot
RUN apt-get install -y pkg-config build-essential autoconf bison re2c libxml2-dev libsqlite3-dev libonig-dev libcurl4-openssl-dev
# clone src.
WORKDIR /opt
RUN git clone ${MY_GIT}
# extract php-libs
RUN mkdir -p ${CLIENT_HOME}/php_lib
WORKDIR ${CLIENT_HOME}
RUN tar -xvf ./install/php-src-PHP-8.0.7.tar -C ${CLIENT_HOME}/php_lib
RUN tar -xvf ./install/parallel-develop.tar -C ${CLIENT_HOME}/php_lib
# install php8.0.7
WORKDIR ${CLIENT_HOME}/php_lib/php-src-PHP-8.0.7
RUN ./buildconf
RUN ./configure --enable-debug --enable-zts --enable-pcntl --enable-mbstring --with-curl
RUN make -j4 && make -j4 install
# install php-parallel
WORKDIR ${CLIENT_HOME}/php_lib/parallel-develop
RUN phpize
RUN ./configure --enable-parallel --enable-parallel-coverage --enable-parallel-dev
RUN make -j4 && make -j4 install
RUN echo "extension=\"parallel\"" >> $(php --ini | grep "Configuration File (php.ini) Path" | awk '{print $5}')/php.ini
# delete install files
WORKDIR ${CLIENT_HOME}
RUN rm -rf ./install
# log dir
RUN mkdir -p ${CLIENT_HOME}/log
# home dir
WORKDIR ${CLIENT_HOME}
ㅇ 실행
# 현재 경로의 Dockerfile 실행
docker build -t {new_img_name}:{tag_name} .
# 특정 경로의 특정 파일명인 Dockerfile 실행
docker build -f {custom_dockerfile_name} -t {new_img_name}:{tag_name} {curstom_dockerfile_dir}
'MicroService > Docker' 카테고리의 다른 글
[Docker] postgresql 배포 샘플 코드 (docker-compose) with adminer (0) | 2023.10.03 |
---|---|
[Docker] Mac 에서 Container 로그 경로 (0) | 2023.03.21 |
[Docker] docker-compose.yml 파일 작성 (0) | 2022.05.12 |
[Docker] 도커 이미지 저장 및 불러오기 (0) | 2022.02.23 |
[Container] Gitlab-ce (0) | 2022.02.23 |