NGINX ile Symfony 5 projesi nasıl Deploy edilir ? 우분투
Bu yazıda sizlere
NGINX ile Symfony 5 projesi nasıl Deploy edilir açıklayamaya çalışıcağım.Bunu yaparken sırasıyla
PHP, Mysql, NGINX, Redis, Composer, Gitlab repository'sinden projeyi çekmek ve NGINX Config kurulum veğaayarlamaÖncelikli olarak 배포 etmek istediğimiz projenin düzgün bir şekilde Gitlab üzerinde bir repository'de bulunduğunu varsayalım.
Webserver'a nasıl geçicez açıkçası o kısmını ben de bilmiyorum . 바나 괴텐 인디 :D
lsb_release -cd ; hostname ; hostname -I ; whoami ; getconf LONG_BIT;크기 de gokten indiyse bu komutları çalıştırarak webserverınız hakkında bilgi alabilirsiniz .Webserver'ı ayağa kaldırmak için gerekli kurulumları yapalım
PHP 8.1
Kuruluma başlamadan önce PHP 네디르 ? 소루순눈 세바비나 바칼림
PHP, HTML 이전 버전에서 사용할 수 있습니다. 사이트를 확장할 수 있습니다.
Php kurulumu için repo'muzu ekleyelim ;
add-apt-repository ppa:ondrej/php -yPHP 8.1 확장 프로그램 확장 ;
sudo apt install php8.1 php8.1-cli php8.1-cgi php8.1-bcmath php8.1-curl php8.1-gd php8.1-intl php8.1-mbstring php8.1-mysql php8.1-opcache php8.1-sqlite3 php8.1-xml php8.1-zip php8.1-snmp php8.1-imap php8.1-common php8.1-tidy php8.1-pgsql php8.1-ldap php8.1-soap php8.1-xsl php8.1-redis php8.1-xmlrpc php8.1-zip php-imagick php-pear php-memcache php-apcu
Php kurulumunu doğrulamak için ;php -vKurduğumuz 확장 추가 괴르멕 için ise ;php -m MYSQL 8
Mysql kurulumda dikkat etmemiz gereken bir konu Yetkilendirme
예를 들어 아직 킬렌디르메가 데이터베이스에 포함되지 않습니다.
sudo apt install mysql-serverMysql'girş yapalım ;mysql -u root예니 도구 모음 ;CREATE USER 'yeni_kullanici'@'localhost' IDENTIFIED BY 'sifre';Yeni Kullanıcıya yetkilendirme verelim ;GRANT ALL PRIVILEGES ON * . * TO 'yeni_kullanici'@'localhost';Komuttaki yıldızlar(*) 데이터베이스 및 표는 해당 정보를 참조합니다. Komut kullanıcıya belirli database ve tablolara izin vermeye olanak sağlar. İşlemi bitirmeden önce yetkileri enilediğinizden emin olun Daha sonra
yeni_kullanıcı ile mysql'e tekrar giriş yapın .mysql -u yeni_kullanici -p 'sifre'Şimdi bir 데이터베이스 olusturalım . 북경 부 데이터베이스 ne işimize yarayacak ?
Symfony projemizdeki verileri tutacak .
Projemizdeki
.env dosyasını ayarlarken kullanacağız, database'i ekteki komut ile olusturalım ;CREATE DATABASE deneme; NGINX
Ngınx webserver'i ayağa kaldıracak hızlı stabil ve hafif bir web sunucudur.
sudo apt install nginxsystemctl start nginxsystemctl status nginx 레디스
sudo apt install redis-serverredis.conf dosyasını düzenleyelim;sudo nano /etc/redis/redis.confsupervised kısmı default olarak no geliyor görseldeki gibi değiştirelim
작곡가
Symfony projemizi ayağa kaldıracak bunu unutmayalım ;
curl -sS https://getcomposer.org/installer | php ; mv composer.phar /usr/local/bin/composer ; chmod +x /usr/local/bin/composer Sunucu üzerinde gerekli tüm kurulumları bitirdiğimizde aşağıdaki adımları takip ederek deployment işlemine başlayabiliriz.
Projemizi çekeceğimiz dizine girelim;
cd /var/www/htmlgit clone https://{gitlab-username}:{access_token}@{git-url}daha anlaşılır olması için bir örnek verelim;
gitlab-username : 알퍼
access_token : abcdf_1234ae
git-url : gitlab.com/alper/test.git
git clone https://alper: [email protected]/alper/test.gitNOT bu kısımda ben acces-token kullandım fakat deploy-token da kullanılabilir.
Projeyi çektikten sonra sahiplendirme ve izin işlemleri için ;
chown -R www-data:www-data /var/www/html/ ; chmod -R 755 /var/www/html/Projemiz symfony projesi olduğu için gerekli paketleri yükleyelim;
Composer install.env dosyasını ayarlayalım
bunun için ilk olarak proje dizinine girelim .
cd /var/www/testnano .env 
ekte olduğu gibi MYSQL Kısmında oluşturduğunuz 데이터베이스'i
.env dosyamıza ekliyoruz .NGINX 구성
프로젝트는 NGINX 구성에 대한 추가 정보를 얻을 수 있습니다.
Ekteki komutta belirtilen dizine default isimli bir dosya olusturur;
nano /etc/nginx/sites-available/defaultdosyamızın içini düzenleyelim;
server {
listen 80;
listen [::]:80;
server_name domain www.domain.com;
root /var/www/test/public;
index index.php;
access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;
client_max_body_size 100M;
autoindex off;
location / {
try_files $uri /index.php$is_args$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
include fastcgi_params;
fastcgi_intercept_errors on;
}
}
kaydetme işlemi için
CTRL+O ENTER CTRL+X구성 dosyamıza sembolik 링크 olusturalım ;sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/daha sonra
nginx.service tekrar başlatalım ;sudo systemctl restart nginx.service그녀의 타맘.
http://domain.com/ sitenizi gorebilirsiniz...
Reference
이 문제에 관하여(NGINX ile Symfony 5 projesi nasıl Deploy edilir ? 우분투), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/milkitea/nginx-ile-symfony-5-projesi-nasil-deploy-edilir-ubuntu-4m3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)