You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
AlexP077 60a40640f3
f
2 years ago
.gitlab/merge_request_templates Update .gitlab/merge_request_templates/Default.md 3 years ago
deploy Big fixes 2 years ago
django_media/post_and_pvz_group_images fix_fixtures 2 years ago
fixtures drop_dists 2 years ago
postamates KK 2 years ago
service f 2 years ago
templates/admin add_house_model 2 years ago
.dockerignore Fix permissions for ao_rayon route 3 years ago
.env.like start_matching_func 3 years ago
.flake8 ml_func_3+add_filter 3 years ago
.gitignore fix_fixtures 2 years ago
.gitlab-ci.yml Feature/cicd 3 years ago
.pre-commit-config.yaml change ci 3 years ago
PrePlacementPoints.xlsx add_house_model 2 years ago
README.md Update README.md 2 years ago
docker-compose.test.yml fix deploy 3 years ago
docker-compose.yml fix_2510 2 years ago
manage.py init 3 years ago
requirements.txt KK 2 years ago
Другие объекты.xlsx fix other objects 3 years ago
Постоматы и ПВЗ.xlsx fix file 3 years ago

README.md

Рекомендательный сервис для размещения постаматов

Инструкция по развёртыванию backend части проекта:

  • Установите docker

  • Установите docker compose

  • Положите файлы из репозитория в папку:

    • через GIT:
    git clone git@gitlab.com:leaders2022/postamates.git postamates
    git pull
    git checkout sst_main
    git pull
    
    • через zip архив: unzip archieve.zip -d postamates
  • создайте файл postamates/.env на основе файла postamates/.env.like

  • Запустите проект:

    cd postamates
    sudo docker-compose up -d
    

Команды для backend части проекта:

  • Создание суперюзера: sudo docker exec -it ${CONTAINERS_NAME}_django python manage.py createsuperuser
  • Создание фикстур: sudo docker exec -it ${CONTAINERS_NAME}_django python manage.py loaddata fixtures/groups.json

Полезные ссылки

  • Админ панель http://HOST:DJANGO_PORT/admin/
  • Swagger http://HOST:DJANGO_PORT/swagger/

Инструкция по devops части проекта:

  • Установите backend

  • Установите frontend

  • Настройте nginx в зависимости от конфигураций .env файлов в backend и frontend репозиториях

  • Пример конфигурации:

	server_name postnet-dev.selftech.ru;

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/postnet-dev.selftech.ru/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/postnet-dev.selftech.ru/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

	root /home/postamates_frontend/dist;

	index index.html;
    client_max_body_size 400m;
    location / {
        try_files $uri /index.html;
    }


    location /api/ {
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        proxy_pass http://0.0.0.0:DJANGO_PORT/api/;
	}
    location /admin/ {
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        proxy_pass http://0.0.0.0:DJANGO_PORT/admin/;
	}
    location /accounts/ {
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        proxy_pass http://0.0.0.0:DJANGO_PORT/accounts/;
	}
    location /media  {
        alias /home/postamates/media;
    }

    location /django_static {
        alias /home/postamates/django_static;
    }

    location /martin {
    	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        proxy_pass http://0.0.0.0:MARTIN_PORT/;
    }

    error_page  500 502 503 504 /50x.html;

    location = /50x.html {
        root  /usr/share/nginx/html;
    }
}
server {
    server_name postnet-dev.selftech.ru;
    if ($host = postnet-dev.selftech.ru) {
        return 301 https://$host$request_uri;
    }
	listen 80 ;
	listen [::]:80 ;
    return 404;
}