Skip to content

Instantly share code, notes, and snippets.

@codersidprogrammer
Created January 26, 2023 02:58
Show Gist options
  • Save codersidprogrammer/348881e531200fe3c37b3523ef43479b to your computer and use it in GitHub Desktop.
Save codersidprogrammer/348881e531200fe3c37b3523ef43479b to your computer and use it in GitHub Desktop.
FROM alpine:3.13
# for laravel lumen run smoothly
RUN apk --no-cache add \
php7 \
php7-dev \
php7-pear \
php7-fpm \
php7-pdo \
php7-mbstring \
php7-openssl \
php7-zip \
php7-xml \
php7-xmlreader \
php7-xmlwriter \
php-simplexml \
autoconf \
make \
g++
RUN apk --no-cache add curl gnupg
RUN curl -O https://download.microsoft.com/download/e/4/e/e4e67866-dffd-428c-aac7-8d28ddafb39b/msodbcsql17_17.8.1.1-1_amd64.apk
RUN curl -O https://download.microsoft.com/download/e/4/e/e4e67866-dffd-428c-aac7-8d28ddafb39b/mssql-tools_17.8.1.1-1_amd64.apk
RUN curl -O https://download.microsoft.com/download/e/4/e/e4e67866-dffd-428c-aac7-8d28ddafb39b/msodbcsql17_17.8.1.1-1_amd64.sig
RUN curl -O https://download.microsoft.com/download/e/4/e/e4e67866-dffd-428c-aac7-8d28ddafb39b/mssql-tools_17.8.1.1-1_amd64.sig
RUN curl https://packages.microsoft.com/keys/microsoft.asc | gpg --import -
RUN gpg --verify msodbcsql17_17.8.1.1-1_amd64.sig msodbcsql17_17.8.1.1-1_amd64.apk
RUN gpg --verify mssql-tools_17.8.1.1-1_amd64.sig mssql-tools_17.8.1.1-1_amd64.apk
RUN apk add --allow-untrusted msodbcsql17_17.8.1.1-1_amd64.apk
RUN apk add --allow-untrusted mssql-tools_17.8.1.1-1_amd64.apk
RUN apk add unixodbc-dev
# for our code run smoothly
RUN apk --no-cache add \
php7-json \
php7-dom \
curl \
php7-curl \
php7-pdo_mysql \
php-gd \
php-mysqli
# for swagger run smoothly
RUN apk --no-cache add \
php7-tokenizer
# for composer & our project depency run smoothly
RUN apk --no-cache add \
php7-phar \
php7-xml \
php7-xmlwriter
# if need composer to update plugin / vendor used
RUN php7 -r "copy('http://getcomposer.org/installer', 'composer-setup.php');" && \
php7 composer-setup.php --install-dir=/usr/bin --filename=composer && \
php7 -r "unlink('composer-setup.php');"
RUN ln -sf /usr/bin/php7 /usr/bin/php && \
ln -s /etc/php7/php.ini /etc/php7/conf.d/php.ini
RUN pecl install sqlsrv
RUN pecl install pdo_sqlsrv
RUN echo extension=pdo_sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/10_pdo_sqlsrv.ini
RUN echo extension=sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/20_sqlsrv.ini
RUN set -x \ \
addgroup -g 82 -S www-data \
adduser -u 82 -D -S -G www-data www-data
# copy all of the file in folder to /src
COPY . /src
WORKDIR /src
RUN composer update
ADD .env.example /src/.env
RUN chmod -R 777 storage
ENTRYPOINT ["php","-S","0.0.0.0:8080","public/index.php"]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment