Skip to content

Instantly share code, notes, and snippets.

@ertugrulozcan
Created July 10, 2023 12:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ertugrulozcan/d768a42675a0327fe53eaa7c4ce3b6cb to your computer and use it in GitHub Desktop.
Save ertugrulozcan/d768a42675a0327fe53eaa7c4ce3b6cb to your computer and use it in GitHub Desktop.

ErtisCMS Ecosystem Installation

MongoDB Build & Run

docker run -d --name mongodb -p 27017:27017 -v data-vol:/data/db -t mongo:latest`

Lookup MongoDB Container IP

docker inspect --format '{{ .NetworkSettings.IPAddress }}' <container_id>



ElasticSearch Build & Run

cd ./elasticsearch
docker compose up -d

ElasticSearch Certificate Fingerprint

  • Find "ca.crt" file on ElasticSearch terminal => cd config/certs/ca

  • Get Full Path readlink -f ca.crt => /usr/share/elasticsearch/config/certs/ca/ca.crt

  • Copy file to local machine from container;

docker cp <container_id>:/usr/share/elasticsearch/config/certs/ca/ca.crt ~/Desktop/ca.crt
  • Extract fingerprint
openssl x509 -fingerprint -sha256 -in ~/Desktop/ca.crt

NOT: Alternatif yöntem; https://localhost:9200/_cluster/health?pretty adresine git. Tarayıcının sertifika görüntüleyicisini kullanarak fingerprint'i al.




ErtisAuth

Build

docker build . -t ertugrulozcan/ertisauth:latest --no-cache

Run

docker run -d \
    --name ertisauth \
    -p 9716:80 \
    --net=bridge \
    -e Database__Host=172.17.0.2 \
    -e Database__Port=27017 \
    -e GeoLocationTracking__Enabled=true \
    -e GeoLocationTracking__Provider=MaxMind \
    -e MaxMind__AccountId=742677 \
    -e MaxMind__LicenseKey=1T2L7GVnlK47EfiP \
    -t ertugrulozcan/ertisauth:latest

ErtisAuth (via HTTPS) Run

Create Certificate

dotnet dev-certs https -ep ${HOME}/.aspnet/https/aspnetapp.pfx -p <certificate_password>
dotnet dev-certs https --trust

Run (HTTPS)

docker run -d \
	--name ertisauth \
	-p 9716:80 \
	-p 9717:443 \
	--net=bridge \
	-e Database__Host=172.17.0.2 \
	-e Database__Port=27017 \
	-e GeoLocationTracking__Enabled=true \
	-e GeoLocationTracking__Provider=MaxMind \
	-e MaxMind__AccountId=742677 \
	-e MaxMind__LicenseKey=1T2L7GVnlK47EfiP \
	-e ASPNETCORE_URLS="https://+;http://+" \
	-e ASPNETCORE_HTTPS_PORT=9717 \
	-e ASPNETCORE_Kestrel__Certificates__Default__Password=<certificate_password> \
	-e ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx \
	-v ${HOME}/.aspnet/https:/https/ \
	-t ertugrulozcan/ertisauth:latest



ManagementAPI

Build

docker build . -t ertiscms-management-api -f ErtisCMS.ManagementAPI/Dockerfile --no-cache

Run

docker run -d \
    --name ertiscms-management-api \
    -p 5000:80 \
    --net=bridge \
    -e Database__Host=172.17.0.2 \
    -e Database__Port=27017 \
    -e ErtisAuth__BaseUrl=http://212.154.70.147:9716/api/v1 \
    -e ErtisAuth__MembershipId=62644cf10a0fc6c3dba34fd0 \
    -e ElasticSearch__Host=https://212.154.70.147 \
    -e ElasticSearch__Port=9200 \
    -e ElasticSearch__Username=elastic \
    -e ElasticSearch__Password=.Abcd1234! \
    -e ElasticSearch__Fingerprint=DD:2A:61:D1:F1:A6:C5:97:50:B8:34:17:DE:23:BD:C0:92:73:0E:E1:15:C8:3A:96:B8:59:D5:F7:A3:19:09:8F \
    -e Sentry__Enable=true \
    -t ertiscms-management-api



DeliveryAPI

Build

docker build . -t ertiscms-delivery-api -f ErtisCMS.DeliveryAPI/Dockerfile --no-cache

Run

docker run -d \
    --name startv-delivery-api \
    -p 5001:80 \
    --net=bridge \
    -e Database__Host=172.17.0.2 \
    -e Database__Port=27017 \
    -e ErtisAuth__BaseUrl=http://212.154.70.147:9716/api/v1 \
    -e ErtisAuth__MembershipId=62644cf10a0fc6c3dba34fd0 \
    -e ElasticSearch__Host=https://212.154.70.147 \
    -e ElasticSearch__Port=9200 \
    -e ElasticSearch__Username=elastic \
    -e ElasticSearch__Password=.Abcd1234! \
    -e ElasticSearch__Fingerprint=DD:2A:61:D1:F1:A6:C5:97:50:B8:34:17:DE:23:BD:C0:92:73:0E:E1:15:C8:3A:96:B8:59:D5:F7:A3:19:09:8F \
    -t ertiscms-delivery-api



MediaAPI

Build

docker build . -t ertiscms-media-api -f ErtisCMS.MediaAPI/Dockerfile --no-cache

Run

docker run -d \
    --name ertiscms-media-api \
    -p 5200:80 \
    --net=bridge \
    -e Database__Host=172.17.0.2 \
    -e Database__Port=27017 \
    -e ErtisAuth__BaseUrl=http://212.154.70.147:9716/api/v1 \
    -e ErtisAuth__MembershipId=62644cf10a0fc6c3dba34fd0 \
    -t ertiscms-media-api



ErtisCMS UI

Build

docker build . -t ertiscms-ui --no-cache

Run

docker run -d --name ertiscms-ui -p 3000:3000 --net=bridge -t ertiscms-ui

-e NODE_TLS_REJECT_UNAUTHORIZED=0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment