husonet | Tarih: 25.02.2019
netcore 2.2 kurulumu Linux için
Debian Linux için netcore ortamı oluşturulmasıyla ilgili adımlar.
Oldukça sık Eposta aldığım konulardan biri olduğu için bu kurulumun nasıl yapılacağına karşı adım adım kurulumu aşağıda yazmaya çalışacam bu konuyla ilgili yorumlarınızı aşağıda paylaşabilirsiniz.
Microsoft için anahtarların register edilmesi
Gerekli bağımlılıkları yüklememiz için Microsoft ürününü register etmemiz gerekir. Çok şükür bu ürün ücretsiz bir ürün :) Bu kısımı kurulama başlamadan bir defa yapmamız yeterlidir. Hadi başlayalım.
su -
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg
mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
wget -q https://packages.microsoft.com/config/debian/9/prod.list
mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
Aslinda bu aşağıdaki kısıma gerek yok ama Ubuntu kullanıcılarının mutlaka kontrol etmesi gerekir.
chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
chown root:root /etc/apt/sources.list.d/microsoft-prod.list
NET için SDK Kurulum
Konsol üzerinden SDK kurulumu için aşağıdaki satır komutlarını çalıştırabilirsiniz. Ubuntu kullanıcıları sudo kullanarak kurulum yapabilir.
apt-get install apt-transport-https
apt-get update
apt-get install dotnet-sdk-2.2
Netcore version
dotnet --version
c# Konsol Uygulaması Oluşturma
Hello World çıktısı alacağımız ilk konsol uygulamasını oluşturalım.
su -
mkdir -P /home/www/test
chown pythontr:pythontr /home/www/test
cd /home/www/test
dotnet new console
dotnet run
Örnek MVC Projesinin Kurulması
dotnet new mvc
Projenin Release Publish Oluşturulması
dotnet publish --configuration Release
Oluşan dll i çalıştırma
dotnet /home/www/domain.com/bin/Release/netcoreapp2.2/domain.dll
SSL Desteksiz Çalıştırma
vim Startup.cs
app.UseHttpsRedirection(); -> #app.UseHttpsRedirection();
Port Ayarlarının Yapılması
vim Properties/launchSettings.json
"domain.com": {
"commandName": "Project",
"launchBrowser": true,
"applicationUrl": "https://localhost:5001;http://localhost:5000",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
Netcore için Apache2 Yapılandırma
Gerekli modullerin enabled edilmesi
a2enmod proxy proxy_http proxy_html deflate rewrite headers
a2dissite 000-default.conf
a2ensite coresample.conf
service apache2 restart
vim ports.conf
Listen 8083
Konfigürasyon dosyasının yapılandırılması
vim /etc/apache2/sites-available/coresample.conf
<VirtualHost *:8083>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/coremvc
ProxyPreserveHost On
#ServerName www.example.com
#ServerAlisa *.example.com
ProxyPass / http://localhost:5000/
ProxyPassReverse / http://localhost:5000/
ErrorLog ${APACHE_LOG_DIR}helloapp-error.log
CustomLog ${APACHE_LOG_DIR}helloapp-access.log common
</VirtualHost>
Netcore için Nginx Yapılandırma
# domain.com -> www.domain.com
server {
listen XXX.XXX.XXX.XXX:80;
server_name domain.com;
rewrite ^/(.*) http://www.domain.com/$1 permanent;
}
server {
listen XXX.XXX.XXX.XXX:80;
# server_name domain.com *.domain.com;
server_name www.domain.com;
location / {
proxy_pass http://localhost:5000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}