mirror of
https://github.com/elyby/accounts.git
synced 2024-11-30 02:32:26 +05:30
Первичные конфиги докера (по мануалам и копипасте)
This commit is contained in:
parent
479f633d3f
commit
f83e98818a
8
.dockerignore
Normal file
8
.dockerignore
Normal file
@ -0,0 +1,8 @@
|
||||
.git/*
|
||||
.env
|
||||
api/config/*-local.php
|
||||
common/config/*-local.php
|
||||
console/config/*-local.php
|
||||
api/runtime
|
||||
console/runtime
|
||||
api/web/assets
|
16
.env
Normal file
16
.env
Normal file
@ -0,0 +1,16 @@
|
||||
# Whether to enable debug mode in Yii. If not set this will be 0.
|
||||
YII_DEBUG=1
|
||||
|
||||
# The application mode. If not set, this will be 'prod'
|
||||
YII_ENV=dev
|
||||
|
||||
# The log trace level. If not set, this will be 0
|
||||
#YII_TRACELEVEL=0
|
||||
|
||||
# Make sure that you provide a different unique cookie validation key in production
|
||||
COOKIE_VALIDATION_KEY="SeCrEt_DeV_Key--DO-NOT-USE-IN-PRODUCTION!"
|
||||
|
||||
# DB credentials. Default is to fetch the host form docker vars and use 'web' as db name, username and password
|
||||
#DB_DSN=mysql:host=my.dbhost.com;dbname=web
|
||||
#DB_USER=user
|
||||
#DB_PASSWORD=secret
|
24
Dockerfile
Normal file
24
Dockerfile
Normal file
@ -0,0 +1,24 @@
|
||||
#FROM codemix/yii2-base:2.0.8-apache
|
||||
FROM codemix/yii2-base:2.0.8-php-fpm
|
||||
#FROM codemix/yii2-base:2.0.8-hhvm
|
||||
|
||||
|
||||
# Composer packages are installed first. This will only add packages
|
||||
# that are not already in the yii2-base image.
|
||||
COPY composer.json /var/www/html/
|
||||
COPY composer.lock /var/www/html/
|
||||
RUN composer self-update --no-progress && \
|
||||
composer install --no-progress --ignore-platform-reqs
|
||||
|
||||
# Copy the working dir to the image's web root
|
||||
COPY . /var/www/html
|
||||
|
||||
# The following directories are .dockerignored to not pollute the docker images
|
||||
# with local logs and published assets from development. So we need to create
|
||||
# empty dirs and set right permissions inside the container.
|
||||
RUN mkdir api/runtime api/web/assets console/runtime \
|
||||
&& chown www-data:www-data api/runtime api/web/assets console/runtime
|
||||
|
||||
# Expose everything under /var/www (vendor + html)
|
||||
# This is only required for the nginx setup
|
||||
VOLUME ["/var/www"]
|
36
docker-compose.yml
Normal file
36
docker-compose.yml
Normal file
@ -0,0 +1,36 @@
|
||||
app:
|
||||
build: ./
|
||||
expose:
|
||||
- "9000"
|
||||
volumes:
|
||||
- ./:/var/www/html/
|
||||
links:
|
||||
- db
|
||||
environment:
|
||||
ENABLE_ENV_FILE: 1
|
||||
ENABLE_LOCALCONF: 1
|
||||
API_TOKEN: "78bb3e46d818793a299ccfcedee213d5ecad07f7"
|
||||
|
||||
web:
|
||||
build: ./nginx
|
||||
ports:
|
||||
- "8080:80"
|
||||
links:
|
||||
- app
|
||||
volumes_from:
|
||||
- app
|
||||
|
||||
db:
|
||||
image: mariadb:10.0
|
||||
ports:
|
||||
- "3306:3306"
|
||||
expose:
|
||||
- "3306"
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: secret-root
|
||||
MYSQL_DATABASE: web
|
||||
MYSQL_USER: web
|
||||
MYSQL_PASSWORD: web
|
||||
|
||||
# Uncomment to autostart at boottime
|
||||
#restart: always
|
2
nginx/Dockerfile
Normal file
2
nginx/Dockerfile
Normal file
@ -0,0 +1,2 @@
|
||||
FROM nginx:1.9
|
||||
COPY nginx.conf /etc/nginx/nginx.conf
|
67
nginx/nginx.conf
Normal file
67
nginx/nginx.conf
Normal file
@ -0,0 +1,67 @@
|
||||
user nginx;
|
||||
worker_processes 1;
|
||||
|
||||
error_log /var/log/nginx/error.log warn;
|
||||
pid /var/run/nginx.pid;
|
||||
|
||||
events {
|
||||
worker_connections 1024;
|
||||
}
|
||||
|
||||
http {
|
||||
include /etc/nginx/mime.types;
|
||||
default_type application/octet-stream;
|
||||
|
||||
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
||||
'$status $body_bytes_sent "$http_referer" '
|
||||
'"$http_user_agent" "$http_x_forwarded_for"';
|
||||
|
||||
access_log /var/log/nginx/access.log main;
|
||||
|
||||
sendfile on;
|
||||
#tcp_nopush on;
|
||||
|
||||
keepalive_timeout 65;
|
||||
|
||||
#gzip on;
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
|
||||
set $root_path '/var/www/html';
|
||||
set $api_path '${root_path}/api/web';
|
||||
set $frontend_path '${root_path}/frontend/dist';
|
||||
|
||||
root $root_path;
|
||||
charset utf-8;
|
||||
client_max_body_size 100M;
|
||||
|
||||
location / {
|
||||
alias $frontend_path;
|
||||
index index.html;
|
||||
try_files $uri /index.html =404;
|
||||
}
|
||||
|
||||
location /api {
|
||||
try_files $uri /api/web/index.php?$args;
|
||||
}
|
||||
|
||||
location ~* \.php$ {
|
||||
fastcgi_pass app:9000;
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
}
|
||||
|
||||
# Раздача статики для frontend
|
||||
location ~* ^.+\.(html|jpg|jpeg|gif|png|svg|js|json|css|zip|rar|eot|ttf|woff|ico) {
|
||||
root $frontend_path;
|
||||
expires max;
|
||||
access_log off;
|
||||
}
|
||||
|
||||
location ~* \.(htaccess|htpasswd|svn|git) {
|
||||
deny all;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user