├── _2_Bash_Script
├── BASH.md
├── _4_nodejs.sh
├── _3_vs_code.sh
├── _14_AllVersion.sh
├── _7_apache_tomcat.sh
├── _2_git.sh
├── _5_jdk.sh
├── _6_maven.sh
├── _9_postgresql.sh
├── _1_common.sh
├── _8_docker.sh
└── _10_sonarQube.sh
├── acilis.txt
├── project1.txt
├── backend.txt
├── TechCareer Bitirme Projesi.pdf
├── _4_Docker
├── Dockers-Workflow-1024x627.png
├── docker-compose.yml
├── deneme.html
├── Dockerfile
├── docker-compose-postgresql.yml
├── docker-compose-mysql.yml
├── docker_install.sh
└── Docker_Information.txt
├── frontend.txt
├── .idea
├── misc.xml
├── .gitignore
├── vcs.xml
├── libraries
│ └── Tech_5_SpringReact.xml
├── modules.xml
└── Techcareer - Middle- DevOps.iml
├── all_project_java_sonarqube
├── _1_spring_react.yml
├── Dockerfile
└── _2_sonarqube.yml
├── _5_SonarQube
├── SonarQube_Information.txt
├── sonarqube.sh
├── sonar-project.properties
├── sonarqube_scanner.sh
├── sonarqube.yml
├── Sonar_README.md
├── docker_install.sh
└── conf
│ ├── wrapper.conf
│ └── sonar.properties
├── package.json
├── .gitignore
├── README.md
├── _7_GitLab
├── GitLab_Repository.md
└── GİTLAB_README.md
├── _3_Git_GitHub
└── 1_Git_Information.txt
└── _1_Linux_Ubuntu
└── 1_Linux_ubuntu_Information.txt
/_2_Bash_Script/BASH.md:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/acilis.txt:
--------------------------------------------------------------------------------
1 | Sout()
2 | psvm
--------------------------------------------------------------------------------
/project1.txt:
--------------------------------------------------------------------------------
1 | 1.satır
2 | 2.satır
3 | 3.satır
--------------------------------------------------------------------------------
/backend.txt:
--------------------------------------------------------------------------------
1 | 1.satır
2 | 2.satır
3 | 3.satır
4 | 4.satır
5 |
--------------------------------------------------------------------------------
/TechCareer Bitirme Projesi.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hamitmizrak/Techcareer-Middle-DevOps-Subat/HEAD/TechCareer Bitirme Projesi.pdf
--------------------------------------------------------------------------------
/_4_Docker/Dockers-Workflow-1024x627.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hamitmizrak/Techcareer-Middle-DevOps-Subat/HEAD/_4_Docker/Dockers-Workflow-1024x627.png
--------------------------------------------------------------------------------
/frontend.txt:
--------------------------------------------------------------------------------
1 | html
2 | css3
3 | js
4 | jquery
5 | bootstrap5
6 | tailwind
7 | nodejs
8 | vue
9 | react
10 | angular JS
11 |
12 | Mobil
13 | react native
14 | android
15 |
--------------------------------------------------------------------------------
/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/_4_Docker/docker-compose.yml:
--------------------------------------------------------------------------------
1 | services:
2 | backend_web:
3 | container_name: my_spring_react
4 | image: my_spring_react
5 | restart: on-failure
6 | build: ./
7 | ports:
8 | - "4444:4444"
--------------------------------------------------------------------------------
/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Editor-based HTTP Client requests
5 | /httpRequests/
6 | # Datasource local storage ignored files
7 | /dataSources/
8 | /dataSources.local.xml
9 |
--------------------------------------------------------------------------------
/all_project_java_sonarqube/_1_spring_react.yml:
--------------------------------------------------------------------------------
1 | services:
2 | backend_web:
3 | container_name: my_spring_react
4 | image: my_spring_react
5 | restart: on-failure
6 | build: ./
7 | ports:
8 | - "1111:1111"
--------------------------------------------------------------------------------
/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/_5_SonarQube/SonarQube_Information.txt:
--------------------------------------------------------------------------------
1 | SonarQube Window Kurulumu
2 | ---------------------------------------------------------------
3 |
4 |
5 |
6 |
7 |
8 | Linux & docker & docker-compose Kurulumu
9 | ---------------------------------------------------------------
--------------------------------------------------------------------------------
/_5_SonarQube/sonarqube.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 | # bash (tercihiniz olsun) ancak bh eskidi
3 | mvn clean verify sonar:sonar \
4 | -Dsonar.projectKey=spring_boot_sonar \
5 | -Dsonar.host.url=http://localhost:9000 \
6 | -Dsonar.login=sqp_507e683324d96ef62259c2535dbda27496c4a98e
7 |
8 |
--------------------------------------------------------------------------------
/.idea/libraries/Tech_5_SpringReact.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/_4_Docker/deneme.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Document
7 |
8 |
9 | Nasılsınız Lorem, ipsum.
10 |
11 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "techcareer---middle--devops",
3 | "version": "1.0.0",
4 | "description": "```sh\r npm init -y",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "keywords": [],
10 | "author": "",
11 | "license": "ISC"
12 | }
13 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Special Data
2 | node_modules
3 |
4 |
5 | .vscode/*
6 | !.vscode/settings.json
7 | !.vscode/tasks.json
8 | !.vscode/launch.json
9 | !.vscode/extensions.json
10 | !.vscode/*.code-snippets
11 |
12 | # Local History for Visual Studio Code
13 | .history/
14 |
15 | # Built Visual Studio Code Extensions
16 | *.vsix
--------------------------------------------------------------------------------
/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/.idea/Techcareer - Middle- DevOps.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Techcareer Devops Middle
2 |
3 | ```sh
4 | npm init -y
5 |
6 | ```
7 |
8 | ---
9 | ### Linux
10 | > Bash Script
11 | > Ubuntu
12 |
13 | ---
14 | ## Git/Github
15 | - Git status
16 | - Git Branch
17 |
18 |
19 | ---
20 | ### Docker
21 | > docker build -t imageAdi.
22 | > docker container run -d --rm -p 4444:4444 --name spring_react imageAdi
23 | >
24 | > docker compose up
25 | > docker compose up -d
26 | > docker compose down
27 |
28 |
--------------------------------------------------------------------------------
/_4_Docker/Dockerfile:
--------------------------------------------------------------------------------
1 | # Image oluşturacagim
2 | # docker image build -t my_spring_react .
3 |
4 |
5 | # JDK Sürümü
6 | FROM openjdk:21
7 |
8 | # Bilgilendirme
9 | LABEL maintainer="hamitmizrak@gmail.com"
10 |
11 | # Cevresel Degiskenler
12 | ENV APP_NAME="Blog Project"
13 | ENV VERSION="v1.0.0"
14 | ENV PORT ="4444"
15 |
16 | # Echo Çıktı Almak
17 | RUN echo "App Data Name : $APP_NAME"
18 | RUN echo "App Data Version : $VERSION"
19 | RUN echo "App Data Port : $PORT"
20 |
21 | # Kalıcılık
22 | VOLUME /tmp
23 |
24 | # PORT
25 | EXPOSE 4444
26 |
27 | # Proje Jar ismini kısaltmak
28 | ARG JAR_FILE=./*.jar
29 |
30 | ADD ${JAR_FILE} spring_react
31 |
32 | ENTRYPOINT [ "java","-jar","/spring_react" ]
33 |
34 |
35 |
--------------------------------------------------------------------------------
/all_project_java_sonarqube/Dockerfile:
--------------------------------------------------------------------------------
1 | # Image oluşturacagim
2 | # docker image build -t my_spring_react .
3 |
4 |
5 | # JDK Sürümü
6 | FROM openjdk:17
7 |
8 | # Bilgilendirme
9 | LABEL maintainer="hamitmizrak@gmail.com"
10 |
11 | # Cevresel Degiskenler
12 | ENV APP_NAME="Blog Project"
13 | ENV VERSION="v1.0.0"
14 | ENV PORT ="1111"
15 |
16 | # Echo Çıktı Almak
17 | RUN echo "App Data Name : $APP_NAME"
18 | RUN echo "App Data Version : $VERSION"
19 | RUN echo "App Data Port : $PORT"
20 |
21 | # Kalıcılık
22 | VOLUME /tmp
23 |
24 | # PORT
25 | EXPOSE 1111
26 |
27 | # Proje Jar ismini kısaltmak
28 | ARG JAR_FILE=./*.jar
29 |
30 | ADD ${JAR_FILE} spring_react
31 |
32 | ENTRYPOINT [ "java","-jar","/spring_react" ]
33 |
34 |
35 |
--------------------------------------------------------------------------------
/_5_SonarQube/sonar-project.properties:
--------------------------------------------------------------------------------
1 | # sonar-project.properties
2 | # https://scm.thm.de/sonar/documentation/analysis/scan/sonarscanner/
3 | sonar.projectKey=spring_boot_sonar
4 | sonar.projectName=spring_boot_sonar
5 | sonar.projectVersion=spring_boot_sonar
6 | sonar.sourceEncoding=UTF-8
7 | sonar.host.url=http://localhost:9000
8 | sonar.login=sqp_507e683324d96ef62259c2535dbda27496c4a98e
9 |
10 | # Backend
11 | # sonar.sources=./src/main/java
12 | # sonar.language=java
13 | # sonar.java.binaries=./target/classes
14 |
15 |
16 | # Frontend
17 | sonar.sources=.
18 | sonar.javascript.lcov.reportPaths=lcov.info
19 | # Javayı statik kod analizene ekleme
20 | sonar.exclusions=**/*.java
21 |
22 | # Windows => Shell Terminal==>sonar-scanner
23 |
24 |
25 |
--------------------------------------------------------------------------------
/_5_SonarQube/sonarqube_scanner.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 |
3 | # updated
4 | sudo apt-get update
5 | sudo apt-get install unzip wget nodejs
6 |
7 | # install
8 | sudo mkdir /downloads/sonarqube -p
9 | sudo cd /downloads/sonarqube
10 | sudo wget https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.2.0.1873-linux.zip
11 | sudo unzip sonar-scanner-cli-4.2.0.1873-linux.zip
12 | sudo mv sonar-scanner-4.2.0.1873-linux /opt/sonar-scanner
13 |
14 | # propertes file
15 | sudo vim /opt/sonar-scanner/conf/sonar-scanner.properties
16 | sonar.host.url=http://localhost:9000
17 | sonar.sourceEncoding=UTF-8
18 |
19 | # environment variables configuration
20 | sudo vim /etc/profile.d/sonar-scanner.sh
21 | #/bin/bash
22 | export PATH="$PATH:/opt/sonar-scanner/bin"
23 |
24 | # reboot machine
25 | sudo reboot
26 |
27 | # source
28 | sudo source /etc/profile.d/sonar-scanner.sh
--------------------------------------------------------------------------------
/_7_GitLab/GitLab_Repository.md:
--------------------------------------------------------------------------------
1 | Command line instructions
2 | You can also upload existing files from your computer using the instructions below.
3 |
4 | # Git global setup
5 | ```sh
6 | git config --global user.name "Hamit Mızrak"
7 | git config --global user.email "hamitmizrak@gmail.com"
8 | Create a new repository
9 | git clone git@gitlab.com:techcareer/techcareer_middle_devops.git
10 | cd techcareer_middle_devops
11 | git switch --create main
12 | touch README.md
13 | git add README.md
14 | git commit -m "add README"
15 | git push --set-upstream origin main
16 | ```
17 | ---
18 |
19 |
20 | # Push an existing folder
21 | ```sh
22 | cd existing_folder
23 | git init --initial-branch=main
24 | git remote add origin git@gitlab.com:techcareer/techcareer_middle_devops.git
25 | git add .
26 | git commit -m "Initial commit"
27 | git push --set-upstream origin main
28 | ```
29 | ---
30 |
31 |
32 | # Push an existing Git repository
33 | ```sh
34 | cd existing_repo
35 | git remote rename origin old-origin
36 | git remote add origin git@gitlab.com:techcareer/techcareer_middle_devops.git
37 | git push --set-upstream origin --all
38 | git push --set-upstream origin --tags
39 | ```
--------------------------------------------------------------------------------
/_5_SonarQube/sonarqube.yml:
--------------------------------------------------------------------------------
1 | # docker-compose version
2 | version: "3"
3 | services:
4 | sonarqube:
5 | container_name: sonarqube
6 | #image: sonarqube:9-community
7 | image: sonarqube:8-community
8 | restart: always
9 | depends_on:
10 | - db
11 | environment:
12 | SONAR_JDBC_URL: jdbc:postgresql://db:5432/sonarqubedb
13 | SONAR_JDBC_USERNAME: sonar
14 | SONAR_JDBC_PASSWORD: sonar
15 | # - SONAR.SEARCH.JAVAADDITIONALOPTS: -Dbootstrap.system_call_filter=false
16 | volumes:
17 | - /opt/sonarCE/data:/opt/sonarqube/data
18 | - /opt/sonarCE/extentions:/opt/sonarqube/extensions
19 | - /opt/sonarCE/logs/:/opt/sonarqube/logs
20 | ports:
21 | - "9000:9000"
22 | db:
23 | container_name: postgresql
24 | image: postgres:12
25 | restart: always
26 | environment:
27 | POSTGRES_USER: sonar
28 | POSTGRES_PASSWORD: sonar
29 | POSTGRES_DB: sonarqubedb
30 | volumes:
31 | - /opt/postgresql/:/var/lib/postgresql
32 | - /opt/postgresql/data:/var/lib/postgresql/data
33 |
34 | #docker-compose up
35 | #docker-compose up -d
36 | #docker-compose -f sonarqube.yml up -d
37 |
38 | # JVM
39 | # Maven
40 | # SonarQube (Linux SonarQube)
41 | # Scanner (Linux Scanner)
42 | # Postgres (Linux Postgres)
43 |
--------------------------------------------------------------------------------
/all_project_java_sonarqube/_2_sonarqube.yml:
--------------------------------------------------------------------------------
1 | # docker-compose version
2 | version: "3"
3 | services:
4 | backend_web:
5 | container_name: my_spring_react
6 | image: my_spring_react
7 | restart: on-failure
8 | build: ./
9 | ports:
10 | - "1111:1111"
11 |
12 | #frontend_web:
13 |
14 | sonarqube:
15 | container_name: sonarqube
16 | #image: sonarqube:9-community
17 | image: sonarqube:8-community
18 | restart: always
19 | depends_on:
20 | - db
21 | environment:
22 | SONAR_JDBC_URL: jdbc:postgresql://db:5432/sonarqubedb
23 | SONAR_JDBC_USERNAME: sonar
24 | SONAR_JDBC_PASSWORD: sonar
25 | # - SONAR.SEARCH.JAVAADDITIONALOPTS: -Dbootstrap.system_call_filter=false
26 | volumes:
27 | - /opt/sonarCE/data:/opt/sonarqube/data
28 | - /opt/sonarCE/extentions:/opt/sonarqube/extensions
29 | - /opt/sonarCE/logs/:/opt/sonarqube/logs
30 | ports:
31 | - "9000:9000"
32 | db:
33 | container_name: postgresql
34 | image: postgres:12
35 | restart: always
36 | environment:
37 | POSTGRES_USER: sonar
38 | POSTGRES_PASSWORD: sonar
39 | POSTGRES_DB: sonarqubedb
40 | volumes:
41 | - /opt/postgresql/:/var/lib/postgresql
42 | - /opt/postgresql/data:/var/lib/postgresql/data
43 |
44 | #docker-compose up
45 | #docker-compose up -d
46 | #docker-compose -f sonarqube.yml up -d
47 |
48 | # JVM
49 | # Maven
50 | # SonarQube (Linux SonarQube)
51 | # Scanner (Linux Scanner)
52 | # Postgres (Linux Postgres)
53 |
--------------------------------------------------------------------------------
/_5_SonarQube/Sonar_README.md:
--------------------------------------------------------------------------------
1 | # Sonar Readme
2 | ---
3 | Sonar Gereksinimler
4 | Java 17
5 | Postgresql
6 |
7 | Windows çalıştırma ==> C:\sonarqube\bin\windows-x86-64\StartSonar.bat
8 | username:admin
9 | password:adminadmin
10 |
11 |
12 | # Java Maven => Pom.xml
13 | ```sh
14 | -- dependencies --
15 |
16 | org.jacoco
17 | jacoco-maven-plugin
18 | 0.8.10
19 |
20 |
21 | --- Build ---
22 |
23 | org.sonarsource.scanner.maven
24 | sonar-maven-plugin
25 | 3.3.0.603
26 |
27 | ```
28 |
29 | # 1.YOL (sonarQube Server ) Java root kısmında bunu terminalde çalıştırın
30 |
31 | Eğer çalışmazsa =>
32 | C:\sonarqube\sonarqube-10.4.1.88267\conf
33 | içine => wrapper.conf içine aşağıdaki path sizin ki ile karşılaştırıp deneyelim.
34 |
35 | > wrapper.java.command=C:\Program Files\Java\jdk-11\bin/java
36 |
37 | mvn clean verify sonar:sonar \
38 | -Dsonar.projectKey=spring_boot_sonar \
39 | -Dsonar.host.url=http://localhost:9000 \
40 | -Dsonar.login=sqp_507e683324d96ef62259c2535dbda27496c4a98e
41 |
42 | # 2.YOL (sonarQube Scanner) Java root kısmında bunu terminalde çalıştırın
43 | > Windows Path => Path ekle => C:\sonarqube\sonar-scanner-cli-5.0.1.3006-windows\sonar-scanner-5.0.1.3006-windows\bin
44 | > sonar-project.properties (Kök dizine eklenir)
45 | > https://scm.thm.de/sonar/documentation/analysis/scan/sonarscanner/
46 | > sonar-scanner (sonar-project.properties) olduğu yerde çalıştır.
47 |
48 |
49 |
--------------------------------------------------------------------------------
/_4_Docker/docker-compose-postgresql.yml:
--------------------------------------------------------------------------------
1 | # docker-compose --version
2 | # docker-compose up
3 | # docker-compose up -d
4 | # docker-compose -f docker-compose-mysql.yml up
5 | # docker-compose -f docker-compose-postgresql.yml up
6 | # docker-compose down
7 | # docker-compose restart
8 | # docker-compose ps
9 |
10 | # restart: parametresi farklı restart işlemlerinde kullanılır. Bu parametre sayesinde
11 | # servisler veya konteynarlar durduğunda ,sistem çöktüğünde serverin nasıl davrancağını belirtir.
12 | # restart: no (default) ( yani docker compose otomatik olarak restart uygulasın
13 | # restart: unless-stopped ( konteynar durduğunda otomatik olarak yeniden başlamasın
14 | # restart: always (konteynar her zaman otomatik başlatsın)
15 | # restart: on-failure (konteynar çökmesi durumunda otomatik olarak başlat)
16 |
17 | version: '3.1'
18 |
19 | services:
20 | dailyapp:
21 | container_name: blog_react
22 | image: blog_react
23 | restart: always
24 | build: ./
25 | ports:
26 | - "5555:4444"
27 | networks:
28 | - blog_default
29 | depends_on:
30 | - "PostgreSQL"
31 | environment:
32 | SPRING_DATASOURCE_URL: jdbc:postgresql://PostgreSQL:5432/blog
33 | SPRING_DATASOURCE_USERNAME: "postgres"
34 | SPRING_DATASOURCE_PASSWORD: "postgres"
35 | SPRING_JPA_HIBERNATE_DDL_AUTO: create
36 |
37 | PostgreSQL:
38 | container_name: postgres_db
39 | image: postgres
40 | ports:
41 | - "5432:5432"
42 | environment:
43 | - POSTGRES_PASSWORD=postgres
44 | - POSTGRES_USER=postgres
45 | - POSTGRES_DB=blog
46 |
47 | networks:
48 | blog_default:
49 | name: blog_default
50 | driver: bridge
--------------------------------------------------------------------------------
/_4_Docker/docker-compose-mysql.yml:
--------------------------------------------------------------------------------
1 | # docker-compose --version
2 | # docker-compose up
3 | # docker-compose up -d
4 | # docker-compose -f docker-compose-mysql.yml up
5 | # docker-compose -f docker-compose-postgresql.yml up
6 | # docker-compose down
7 | # docker-compose restart
8 | # docker-compose ps
9 |
10 |
11 | # restart: parametresi farklı restart işlemlerinde kullanılır. Bu parametre sayesinde
12 | # servisler veya konteynarlar durduğunda ,sistem çöktüğünde serverin nasıl davrancağını belirtir.
13 | # restart: no (default) ( yani docker compose otomatik olarak restart uygulasın
14 | # restart: unless-stopped ( konteynar durduğunda otomatik olarak yeniden başlamasın
15 | # restart: always (konteynar her zaman otomatik başlatsın)
16 | # restart: on-failure (konteynar çökmesi durumunda otomatik olarak başlat)
17 |
18 | services:
19 | dailyapp:
20 | container_name: blog_react
21 | image: blog_react
22 | restart: always
23 | build: ./
24 | ports:
25 | - "4444:4444"
26 | environment:
27 | - spring.datasource.url= jdbc:mysql://mysqldb:3306/blog?createDatabaseIfNotExist=true&autoReconnect=true&allowPublicKeyRetrieval=true&useSSL=false
28 | networks:
29 | - springmysql
30 | depends_on:
31 | - mysqldb
32 |
33 | mysqldb:
34 | image: mysql:8.0
35 | ports:
36 | - 3307:3306
37 | expose:
38 | - "3306"
39 | networks:
40 | - springmysql
41 | environment:
42 | - MYSQL_ROOT_PASSWORD=root
43 | - MYSQL_DATABASE=blog
44 | - MYSQL_USER=hamit
45 | - MYSQL_PASSWORD=root
46 | restart: unless-stopped
47 |
48 | networks:
49 | springmysql:
50 | name: springmysql
51 | driver: bridge
--------------------------------------------------------------------------------
/_2_Bash_Script/_4_nodejs.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 | echo "VS CODE"
3 |
4 | # User Variable
5 | UPDATED="Güncelleme"
6 | CLEANER="Temizleme"
7 | INSTALL="Yükleme"
8 | DELETED="Silme"
9 | WHICH="Nerede ?"
10 | COMMONINFORMATION=" Genel Bilgiler"
11 |
12 | # System Variable
13 |
14 | # Updated
15 | sleep 2
16 | echo -e "\n### ${UPDATED} ###"
17 | read -p "Güncelleme istiyor musunuz E/H ? " updatedResult
18 | if [[ $updatedResult == "E" || $updatedResult == "e" ]]
19 | then
20 | echo -e "Güncelleme Başlandı... "
21 | sudo apt-get update && sudo apt-get upgrade -y
22 | else
23 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
24 | fi
25 |
26 |
27 | # Common
28 | sleep 2
29 | echo -e "\n### ${COMMONINFORMATION} ###"
30 | read -p "Genel Bilgiler istiyor musunuz E/H ? " commonResult
31 | if [[ $commonResult == "E" || $commonResult == "e" ]]
32 | then
33 | echo -e "Genel Bilgiler Başlandı... "
34 | echo -e "Ben Kimim ... "
35 | sudo whoami
36 | echo -e "IP ... "
37 | sudo ifconfig
38 | echo -e "Portlar ... "
39 | sudo netstat -nlptu
40 | echo -e "Ram ... "
41 | sudo free -m
42 | else
43 | echo -e "Genel Bilgiler Gösterilmediı!!!\n "
44 | fi
45 |
46 | # Yükleme
47 | sleep 2
48 | echo -e "\n### ${UPDATED} ###"
49 | read -p "Node JS Yükleme istiyor musunuz E/H ? " installingResult
50 | if [[ $installingResult == "E" || $installingResult == "e" ]]
51 | then
52 | echo -e "Yükleme Başlandı... "
53 | sudo apt-get install -y nodejs
54 | sleep 1
55 | npm -v
56 | node -v
57 | else
58 | echo -e "Node JS Yüklemesi Yapılmadı!!!\n "
59 | fi
60 |
61 | # Temizlik
62 | sleep 2
63 | echo -e "\n###### Cache Temizleme ######"
64 | read -p "Cache Temizleme istiyor musunuz? E / H ? " cleanResult
65 | if [[ $cleanResult == "E" || $cleanResult == "e" ]]
66 | then
67 | echo -e "\n######" $CLEANER "######"
68 | echo -e "Temizlik Başlandı... "
69 | sudo apt-get clean
70 | sudo apt-get autoremove -y
71 | else
72 | echo -e "Temizlik Yapılmadı!!!\n "
73 | fi
74 |
75 |
76 | sleep 2
77 | echo -e "\n###### BİTTİ ######"
78 |
79 |
--------------------------------------------------------------------------------
/_2_Bash_Script/_3_vs_code.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 | echo "VS CODE"
3 |
4 | # User Variable
5 | UPDATED="Güncelleme"
6 | CLEANER="Temizleme"
7 | INSTALL="Yükleme"
8 | DELETED="Silme"
9 | WHICH="Nerede ?"
10 | COMMONINFORMATION=" Genel Bilgiler"
11 |
12 | # System Variable
13 |
14 | # Updated
15 | sleep 2
16 | echo -e "\n### ${UPDATED} ###"
17 | read -p "Güncelleme istiyor musunuz E/H ? " updatedResult
18 | if [[ $updatedResult == "E" || $updatedResult == "e" ]]
19 | then
20 | echo -e "Güncelleme Başlandı... "
21 | sudo apt-get update && sudo apt-get upgrade -y
22 | else
23 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
24 | fi
25 |
26 |
27 | # Common
28 | sleep 2
29 | echo -e "\n### ${COMMONINFORMATION} ###"
30 | read -p "Genel Bilgiler istiyor musunuz E/H ? " commonResult
31 | if [[ $commonResult == "E" || $commonResult == "e" ]]
32 | then
33 | echo -e "Genel Bilgiler Başlandı... "
34 | echo -e "Ben Kimim ... "
35 | sudo whoami
36 | echo -e "IP ... "
37 | sudo ifconfig
38 | echo -e "Portlar ... "
39 | sudo netstat -nlptu
40 | echo -e "Ram ... "
41 | sudo free -m
42 | else
43 | echo -e "Genel Bilgiler Gösterilmediı!!!\n "
44 | fi
45 |
46 | # Yükleme
47 | sleep 2
48 | echo -e "\n### ${UPDATED} ###"
49 | read -p "VS Code'u Yükleme istiyor musunuz E/H ? " installingResult
50 | if [[ $installingResult == "E" || $installingResult == "e" ]]
51 | then
52 | echo -e "Yükleme Başlandı... "
53 | sudo snap install code --classic
54 | sleep 1
55 | echo -e "Bağımlılıklar Yükleniyor"
56 | sudo apt install –f
57 | sudo mkdir frontend
58 | cd frontend
59 | code .
60 | else
61 | echo -e "Yükleme Yapılmadı!!!\n "
62 | fi
63 |
64 | # Temizlik
65 | sleep 2
66 | echo -e "\n###### Cache Temizleme ######"
67 | read -p "Cache Temizleme istiyor musunuz? E / H ? " cleanResult
68 | if [[ $cleanResult == "E" || $cleanResult == "e" ]]
69 | then
70 | echo -e "\n######" $CLEANER "######"
71 | echo -e "Temizlik Başlandı... "
72 | sudo apt-get clean
73 | sudo apt-get autoremove -y
74 | else
75 | echo -e "Temizlik Yapılmadı!!!\n "
76 | fi
77 |
78 |
79 | sleep 2
80 | echo -e "\n###### BİTTİ ######"
81 |
82 |
--------------------------------------------------------------------------------
/_2_Bash_Script/_14_AllVersion.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 | echo "VS CODE"
3 |
4 | # User Variable
5 | UPDATED="Güncelleme"
6 | CLEANER="Temizleme"
7 | INSTALL="Yükleme"
8 | DELETED="Silme"
9 | WHICH="Nerede ?"
10 | COMMONINFORMATION=" Genel Bilgiler"
11 | LOGIN="Docker Login"
12 | DOKCER_PULL="Docker Pulling"
13 |
14 | # System Variable
15 |
16 | # Updated
17 | sleep 2
18 | echo -e "\n### ${UPDATED} ###"
19 | read -p "Güncelleme istiyor musunuz E/H ? " updatedResult
20 | if [[ $updatedResult == "E" || $updatedResult == "e" ]]
21 | then
22 | echo -e "Güncelleme Başlandı... "
23 | sudo apt-get update && sudo apt-get upgrade -y
24 | else
25 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
26 | fi
27 |
28 |
29 | # Common
30 | sleep 2
31 | echo -e "\n### ${COMMONINFORMATION} ###"
32 | read -p "Genel Bilgiler istiyor musunuz E/H ? " commonResult
33 | if [[ $commonResult == "E" || $commonResult == "e" ]]
34 | then
35 | echo -e "Genel Bilgiler Başlandı... "
36 | echo -e "Ben Kimim ... "
37 | sudo whoami
38 | echo -e "IP ... "
39 | sudo ifconfig
40 | echo -e "Portlar ... "
41 | sudo netstat -nlptu
42 | echo -e "Ram ... "
43 | sudo free -m
44 | else
45 | echo -e "Genel Bilgiler Gösterilmediı!!!\n "
46 | fi
47 |
48 |
49 | # Temizlik
50 | sleep 2
51 | echo -e "\n###### Cache Temizleme ######"
52 | read -p "Cache Temizleme istiyor musunuz? E / H " cleanResult
53 | if [[ $cleanResult == "E" || $cleanResult == "e" ]]
54 | then
55 | echo -e "\n######" $CLEANER "######"
56 | echo -e "Temizlik Başlandı... "
57 | sudo apt-get clean
58 | sudo apt-get autoremove -y
59 | echo -e "Bağımlılıklar Yükleniyor"
60 | sudo apt install –f
61 | else
62 | echo -e "Temizlik Yapılmadı!!!\n "
63 | fi
64 |
65 | # Version
66 | sleep 2
67 | echo -e "\n###### Version Bakmak ######"
68 | read -p "Versiyona bakmak istiyor musunuz? E / H " versionResult
69 | if [[ $versionResult == "E" || $versionResult == "e" ]]
70 | then
71 | echo -e "\n###### Versionlar ######"
72 | pwd
73 | sleep 2
74 | which mvn
75 | mvn -v
76 | sleep 2
77 | which java
78 | java --version
79 | sleep 2
80 | which docker
81 | docker version
82 | sleep 2
83 | git version
84 | node -v
85 | sleep 2
86 | npm -v
87 | sleep 2
88 | curl --version
89 | sleep 2
90 | else
91 | echo -e "Temizlik Yapılmadı!!!\n "
92 | fi
93 |
94 |
95 | sleep 2
96 | echo -e "\n###### BİTTİ ######"
97 |
--------------------------------------------------------------------------------
/_2_Bash_Script/_7_apache_tomcat.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 | echo "APACHE TOMCAT"
3 |
4 | # User Variable
5 | UPDATED="Güncelleme"
6 | CLEANER="Temizleme"
7 | INSTALL="Yükleme"
8 | DELETED="Silme"
9 | WHICH="Nerede ?"
10 | VERSION=Version
11 | COMMONINFORMATION="Genel Bilgiler"
12 |
13 | # System Variable
14 |
15 | # Updated
16 | sleep 2
17 | echo -e "\n### ${UPDATED} ###"
18 | read -p "Güncelleme istiyor musunuz E/H ? " updatedResult
19 | if [[ $updatedResult == "E" || $updatedResult == "e" ]]
20 | then
21 | echo -e "Güncelleme Başlandı... "
22 | sudo apt-get update && sudo apt-get upgrade -y
23 | else
24 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n"
25 | fi
26 |
27 |
28 | # Common
29 | sleep 2
30 | echo -e "\n### ${COMMONINFORMATION} ###"
31 | read -p "Genel Bilgiler istiyor musunuz E/H ? " commonResult
32 | if [[ $commonResult == "E" || $commonResult == "e" ]]
33 | then
34 | echo -e "Genel Bilgiler Başlandı... "
35 | echo -e "Ben Kimim ... "
36 | sudo whoami
37 | echo -e "IP ... "
38 | sudo ifconfig
39 | echo -e "Portlar ... "
40 | sudo netstat -nlptu
41 | echo -e "Ram ... "
42 | sudo free -m
43 | else
44 | echo -e "Genel Bilgiler Gösterilmediı!!!\n "
45 | fi
46 |
47 | # Yükleme
48 | sleep 2
49 | echo -e "\n### ${UPDATED} ###"
50 | read -p "Apache Tomcat 'i Yükleme istiyor musunuz E/H ? " installingResult
51 | if [[ $installingResult == "E" || $installingResult == "e" ]]
52 | then
53 | echo -e "Yükleme Başlandı... "
54 |
55 | sleep 2
56 | sudo apt-get install wget unzip -y
57 | sudo apt-get install wget zip -y
58 | sudo apt install vim -y
59 | sudo apt install net-tools
60 |
61 | sleep 2
62 | wget https://archive.apache.org/dist/tomcat/tomcat-10/v10.0.8/bin/apache-tomcat-10.0.8.tar.gz
63 | sudo tar xzvf apache-tomcat-10.0.8.tar.gz
64 | sudo mkdir /opt/tomcat/
65 | sudo mv apache-tomcat-10.0.8/* /opt/tomcat/
66 | sudo chown -R www-data:www-data /opt/tomcat/
67 | sudo chmod -R 755 /opt/tomcat/
68 |
69 | else
70 | echo -e "Yükleme Yapılmadı!!!\n "
71 | fi
72 |
73 | # Temizlik
74 | sleep 2
75 | echo -e "\n###### Cache Temizleme ######"
76 | read -p "Cache Temizleme istiyor musunuz? E / H " cleanResult
77 | if [[ $cleanResult == "E" || $cleanResult == "e" ]]
78 | then
79 | echo -e "\n######" $CLEANER "######"
80 | echo -e "Temizlik Başlandı... "
81 | sudo apt-get clean
82 | sudo apt-get autoremove -y
83 | else
84 | echo -e "Temizlik Yapılmadı!!!\n "
85 | fi
86 |
87 |
88 | sleep 2
89 | echo -e "\n###### BİTTİ ######"
90 |
--------------------------------------------------------------------------------
/_2_Bash_Script/_2_git.sh:
--------------------------------------------------------------------------------
1 |
2 | #! /bin/bash
3 |
4 | # Shell çalıştırmak
5 | # ./_1_common.sh
6 |
7 | # User Variable
8 | UPDATED="Güncelleme"
9 | NOT_UPDATED="Güncellenmedi"
10 | CLEANER="Temizleme"
11 | INSTALL="Yükleme"
12 | NOT_INSTALLED="Yüklenmedi"
13 | DELETED="Silme"
14 | COMMON_INFORMATION="Genel Bilgiler"
15 | ERROR="Hata"
16 | WARNING="Uyarı"
17 | SUCCESS="Başarılı"
18 | FAILED="Başarısız"
19 | NOT_FOUND="Bulunamadı"
20 | CHMOD="Dosya İzinleri Vermek"
21 |
22 | # Güncelleme
23 | sleep 2
24 | echo -e "\n "
25 | read -p " $UPDATED İstiyor musunuz ? E/H " updateUserResponse
26 | if [[ $updateUserResponse == "E" || $updateUserResponse == "e" ]];
27 | then
28 | echo -e "Güncelleme Başlandı... "
29 | sudo apt-get update && sudo apt-get upgrade -y
30 | sudo apt install –f
31 | else
32 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
33 | fi
34 |
35 | # PORT
36 | sleep 2
37 | echo -e "\n PORT"
38 | read -p "Port Aktif etmek ve izin Vermek istiyor musunuz ? E/H " updateUserResponse
39 | if [[ $updateUserResponse == "E" || $updateUserResponse == "e" ]];
40 | then
41 | echo -e "Port İşlemlerine Başlandı... "
42 | sudo netstat -nlptu
43 | sudo ufw allow 22
44 | sudo ufw allow 80
45 | sudo ufw allow 443
46 | sudo ufw allow 1111
47 | sudo ufw allow 2222
48 | sudo ufw allow 3333
49 | sudo ufw allow 4444
50 | sudo ufw allow 8080
51 | sudo ufw allow 8000
52 | sudo ufw allow 9000
53 | sudo ufw allow 3306
54 | sudo ufw allow 5432
55 | else
56 | echo -e "Port Güncelleme Yapılmadı!!!\n "
57 | fi
58 |
59 |
60 | # Yükleme
61 | sleep 2
62 | echo -e "\n### ${UPDATED} ###"
63 | read -p "Git'i Yükleme istiyor musunuz E/H ? " installingResult
64 | if [[ $installingResult == "E" || $installingResult == "e" ]]
65 | then
66 | echo -e "Yükleme Başlandı... "
67 | sudo apt-get install git -y
68 | git version
69 | git config --global user.name "hamitmizrak"
70 | git config --global user.email "hamitmizrak@gmail.com"
71 | git config --global -l
72 | sleep 1
73 | echo -e "Bağımlılıklar Yükleniyor"
74 | sudo apt install –f
75 |
76 | else
77 | echo -e "Yükleme Yapılmadı!!!\n "
78 | fi
79 |
80 | # TEMİZLEME
81 | sleep 2
82 | echo -e "\n TEMİZLE"
83 | read -p "Cache yapmak istiyor musunuz ? E/H " updateUserResponse
84 | if [[ $updateUserResponse == "E" || $updateUserResponse == "e" ]];
85 | then
86 | echo -e "\nTemizle Başlandı... "
87 | sudo apt-get clean
88 | sudo apt-get autoremove -y
89 |
90 | else
91 | echo -e "Temizlik Yapılmadı!!!\n "
92 | fi
93 |
--------------------------------------------------------------------------------
/_7_GitLab/GİTLAB_README.md:
--------------------------------------------------------------------------------
1 | # GitLab Gereksinimleri (VPS)
2 |
3 | > Gitlab 502 Error
4 |
5 | - En az RAM 8GB
6 | - En az CPU 4 Core
7 | ---
8 |
9 |
10 | # GitLab Linux Codes
11 | > Linux
12 | - sudo GitLab-ctl status
13 | - sudo GitLab-ctl restart
14 | - sudo GitLab-ctl stop
15 | ---
16 |
17 |
18 |
19 | # GitLab Tutorials
20 | > Açık kaynak kodlu bir git repositoridir.
21 | > Go diliyle yazılmıştır. Docker'da "GO" diliyle yazılmıştır.
22 | > Ücretresiz.
23 | > Web tabanlıdır.
24 | > Kendi serverımıza yükleyebiliriz. Yetkilendirme yapabiliriz.
25 | > VPS Digital Ocean
26 | > CI/CD sürekli entegrasyon && sürekli teslimatı destekler
27 | > Projelerimizi public/private yapabiliriz.
28 | > Sınırsız kod deposu
29 | > Sınırsız disk alanı
30 | > Kod paylaşımı
31 | > Proje yönetimi
32 | > CI
33 | > CD
34 | ---
35 |
36 | ### Readme (.md) Mark Down
37 |
38 | **Bold Yazı**
39 |
40 | *italic Yazı*
41 | `Fosforlu kalem`
42 | [Link](https://)
43 |
44 | > Girinti çizgisi
45 | > step -1
46 | > step -2
47 | > step -3
48 |
49 | - Noktalama işareti
50 | - step -4
51 | - step -5
52 | - step -6
53 |
54 | ```sh
55 | step -7
56 | step -8
57 | step -9
58 | ```
59 |
60 | ---
61 |
62 |
63 | ## GitLab Hub bilgileri
64 | > Jenkins: Groovy kullanıyor.
65 | > GitLab : YAML/YML kullanıyor. => .gitlab-ci.yml VEYA docker.gitlab-ci.yml
66 | > Docker : YAML/YML kullanıyor. => docker-compose.yml
67 | > Sonarqube : sonar-project.properties
68 | ---
69 |
70 | ## GitLab Konu başlıkları (Feature)
71 |
72 | > Gitlab CI/CD
73 | > Issue Management
74 | > Gitlab Pipeline
75 | > Deployment
76 | > Wiki
77 | > Sharing
78 | > Access Token
79 | > SSH Keys
80 | > GPG Keys
81 | > Gizli bilgi (password ) $ROOT_PASSWORD
82 |
83 | ---
84 |
85 |
86 |
87 |
88 | ## GitLab VPS bilgileri
89 |
90 | > on-preme : özel kendi sunucularımızda saklıyoruz.
91 |
92 | ---
93 |
94 | ## GitLab Avantajları
95 |
96 | > iş takibi
97 | > Wiki dokument
98 | > Entegrasyon
99 | > SonarQube D/EE/Data center çalıştırabiliriz.
100 | > Pull Request (merge)
101 |
102 | ---
103 |
104 |
105 |
106 | ## GitLab Type
107 |
108 | > Gitlab CE (Community Edition)
109 | > Gitlab EE (Enterprice Edition)
110 |
111 | ---
112 |
113 |
114 | ## GitLab Runner (Ajan)
115 |
116 | > Projedeki bilgileri alıyor ve gitlab server'a iletiyor.
117 | > Süreçi yönetme için kullanığımız gitlab parçasıdır.
118 | > GitLab tamamen izole olmuş bir şekilde çalışmaktadır.
119 | > Gitlab sunucuyla, GitLab runner aynı yerde olmak zorunda değildir.
120 | > GitLab ücretsiz hesaplarından kullanabileceğimiz Shared Runnerlar mevcuttur.
121 | > Kendi hesabımızda istediğimiz kadar gitlab runnerlar çalıştırabiliriz.
122 |
123 | ---
124 |
125 |
126 | ## GitLab SCM (Source Control Management)
127 |
128 | > Dal, birleştirme
129 | > Düzgün ve anlaşılır isimlendirme
130 | > Merge istekleri
131 | > İyi belgelendirme
132 |
133 | ---
134 |
135 |
136 | ## GitLab Avantajları
137 |
138 | >
139 |
140 | ---
141 |
142 |
143 | ## GitLab Avantajları
144 |
145 | >
146 |
147 | ---
148 |
149 | ```sh
150 |
151 | ```
--------------------------------------------------------------------------------
/_4_Docker/docker_install.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 |
3 | sleep 2
4 | echo -e "\n###### Docker Temizleme ######"
5 | sudo apt-get purge docker-ce docker-ce-cli containerd.io -y
6 | sudo rm -rf /var/lib/docker
7 | sudo rm -rf /var/lib/containerd
8 | sudo apt-get clean
9 | sudo apt-get autoremove -y
10 | sudo apt-get update
11 | sudo apt-get remove docker docker-engine docker.io containerd runc
12 | sudo apt-get update
13 |
14 | #######################################################################
15 | #######################################################################
16 |
17 | sleep 2
18 | echo -e "\n###### Docker Kurulumu ######"
19 | sudo apt-get install -y ca-certificates curl gnupg
20 | sudo install -m 0755 -d /etc/apt/keyrings
21 | curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
22 | sudo chmod a+r /etc/apt/keyrings/docker.gpg
23 |
24 | echo \
25 | "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
26 | "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
27 | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
28 |
29 | sudo apt-get update
30 | sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin
31 |
32 | sudo systemctl daemon-reload
33 | sudo systemctl restart docker
34 | sudo systemctl start docker
35 | sudo systemctl enable docker
36 | sudo systemctl status docker
37 |
38 | #######################################################################
39 | #######################################################################
40 | sleep 2
41 | echo -e "\n###### Docker Compose ######"
42 | sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
43 | sudo chmod +x /usr/local/bin/docker-compose
44 | docker-compose --version
45 |
46 | #######################################################################
47 | #######################################################################
48 | sleep 2
49 | echo -e "\n###### Docker Sudo ######"
50 | sudo groupadd docker
51 | sudo usermod -aG docker $USER
52 | newgrp docker
53 | docker ps
54 | docker version
55 | q
56 |
57 | #######################################################################
58 | #######################################################################
59 |
60 |
61 | sleep 2
62 | echo -e "\n###### Docker Bash Completion ######"
63 | sudo apt-get install bash-completion
64 |
65 | #######################################################################
66 | #######################################################################
67 |
68 | # sudo apt install -f
69 | echo -e "\n###### Docker Pulling ######"
70 | docker version
71 | docker run hello-world
72 | docker pull nginx
73 | docker pull httpd
74 | docker pull mysql
75 | docker pull mongo
76 | docker pull ubuntu
77 | docker pull centos
78 |
79 | #######################################################################
80 | #######################################################################
81 |
82 |
83 | echo -e "\n###### Docker Login ######"
84 | docker login
85 | # docker logout
86 |
87 |
--------------------------------------------------------------------------------
/_5_SonarQube/docker_install.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 |
3 | sleep 2
4 | echo -e "\n###### Docker Temizleme ######"
5 | sudo apt-get purge docker-ce docker-ce-cli containerd.io -y
6 | sudo rm -rf /var/lib/docker
7 | sudo rm -rf /var/lib/containerd
8 | sudo apt-get clean
9 | sudo apt-get autoremove -y
10 | sudo apt-get update
11 | sudo apt-get remove docker docker-engine docker.io containerd runc
12 | sudo apt-get update
13 |
14 | #######################################################################
15 | #######################################################################
16 |
17 | sleep 2
18 | echo -e "\n###### Docker Kurulumu ######"
19 | sudo apt-get install -y ca-certificates curl gnupg
20 | sudo install -m 0755 -d /etc/apt/keyrings
21 | curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
22 | sudo chmod a+r /etc/apt/keyrings/docker.gpg
23 |
24 | echo \
25 | "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
26 | "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
27 | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
28 |
29 | sudo apt-get update
30 | sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin
31 |
32 | sudo systemctl daemon-reload
33 | sudo systemctl restart docker
34 | sudo systemctl start docker
35 | sudo systemctl enable docker
36 | sudo systemctl status docker
37 |
38 | #######################################################################
39 | #######################################################################
40 | sleep 2
41 | echo -e "\n###### Docker Compose ######"
42 | sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
43 | sudo chmod +x /usr/local/bin/docker-compose
44 | docker-compose --version
45 |
46 | #######################################################################
47 | #######################################################################
48 | sleep 2
49 | echo -e "\n###### Docker Sudo ######"
50 | sudo groupadd docker
51 | sudo usermod -aG docker $USER
52 | newgrp docker
53 | docker ps
54 | docker version
55 | q
56 |
57 | #######################################################################
58 | #######################################################################
59 |
60 |
61 | sleep 2
62 | echo -e "\n###### Docker Bash Completion ######"
63 | sudo apt-get install bash-completion
64 |
65 | #######################################################################
66 | #######################################################################
67 |
68 | # sudo apt install -f
69 | echo -e "\n###### Docker Pulling ######"
70 | docker version
71 | docker run hello-world
72 | docker pull nginx
73 | docker pull httpd
74 | docker pull mysql
75 | docker pull mongo
76 | docker pull ubuntu
77 | docker pull centos
78 |
79 | #######################################################################
80 | #######################################################################
81 |
82 |
83 | echo -e "\n###### Docker Login ######"
84 | docker login
85 | # docker logout
86 |
87 |
--------------------------------------------------------------------------------
/_2_Bash_Script/_5_jdk.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 | echo "JAVA JDK"
3 |
4 | # User Variable
5 | UPDATED="Güncelleme"
6 | CLEANER="Temizleme"
7 | INSTALL="Yükleme"
8 | DELETED="Silme"
9 | WHICH="Nerede ?"
10 | COMMONINFORMATION=" Genel Bilgiler"
11 |
12 | # System Variable
13 |
14 | # Updated
15 | sleep 2
16 | echo -e "\n### ${UPDATED} ###"
17 | read -p "Güncelleme istiyor musunuz E/H ? " updatedResult
18 | if [[ $updatedResult == "E" || $updatedResult == "e" ]]
19 | then
20 | echo -e "Güncelleme Başlandı... "
21 | sudo apt-get update && sudo apt-get upgrade -y
22 | else
23 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
24 | fi
25 |
26 |
27 | # Common
28 | sleep 2
29 | echo -e "\n### ${COMMONINFORMATION} ###"
30 | read -p "Genel Bilgiler istiyor musunuz E/H ? " commonResult
31 | if [[ $commonResult == "E" || $commonResult == "e" ]]
32 | then
33 | echo -e "Genel Bilgiler Başlandı... "
34 | echo -e "Ben Kimim ... "
35 | sudo whoami
36 | echo -e "IP ... "
37 | sudo ifconfig
38 | echo -e "Portlar ... "
39 | sudo netstat -nlptu
40 | echo -e "Ram ... "
41 | sudo free -m
42 | else
43 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
44 | fi
45 |
46 |
47 | # JAVA
48 | sleep 2
49 | echo -e "\n###### JAVA ######"
50 | read -p "JAVA Yükleme istiyor musunuz? E / H ? " installingResult
51 | if [[ $installingResult == "E" || $installingResult == "e" ]]
52 | then
53 | # Java
54 | echo -e "\n###### JAVA" $INSTALL "######"
55 | echo -e "\n######" $WHICH "######"
56 | which java
57 | which git
58 | sudo apt-get update
59 | java --version
60 | javac --version
61 | sudo apt install openjdk-11-jdk -y
62 | sudo add-apt-repository ppa:openjdk-r/ppa -y
63 | # JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64/bin/"
64 | # vim deneme2.sh #-s <(echo -e "/foo/\ndd\n:wq")
65 | echo -e "#Java Home\nJAVA_HOME=\"/usr/lib/jvm/java-11-openjdk-amd64/bin/\" " >> ~/.bashrc
66 | # sudo apt-get update
67 | #sudo apt-get upgrade -y
68 |
69 | #sudo apt-get install wget unzip -y
70 | #sudo apt-get install openjdk-17-jdk -y
71 | #sudo apt-get install openjdk-17-jre -y
72 | #sudo update-alternatives --config java
73 | #java -version
74 |
75 |
76 | echo $JAVA_HOME
77 | # java version
78 | echo -e "\n######" "java" $VERSION "######"
79 | java -version
80 | javac -version
81 | sleep 1
82 | echo -e "Bağımlılıklar Yükleniyor"
83 | sudo apt install –f
84 | else
85 | echo -e "Java Güncelleme Yapılmadı!!!\n "
86 | fi
87 |
88 |
89 | # Silme
90 | sleep 2
91 | echo -e "\n### ${DELETED} ###"
92 | echo -e "\nJava'yı Silmek istiyor musunuz ? E/H " deletedResult
93 | if [[ $deletedResult == "E" || $deletedResult == "e" ]]
94 | then
95 | echo -e "Temizlik Başlandı... "
96 | sudo update-alternatives --remove "java" "/usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java"
97 | sudo update-alternatives --remove "javac" "/usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/javac"
98 | sudo update-alternatives --remove "javaws" "/usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/javaws"
99 | sudo rm -r /usr/lib/jvm/
100 | sudo apt-get clean
101 | sudo apt-get autoremove -y
102 | else
103 | echo -e "Java Silme Yapılmadı!!!\n "
104 | fi
105 |
106 | # Temizlik
107 | sleep 2
108 | echo -e "\n###### Cache Temizleme ######"
109 | read -p "Cache Temizleme istiyor musunuz? E / H " cleanResult
110 | if [[ $cleanResult == "E" || $cleanResult == "e" ]]
111 | then
112 | echo -e "\n######" $CLEANER "######"
113 | echo -e "Temizlik Başlandı... "
114 | sudo apt-get clean
115 | sudo apt-get autoremove -y
116 | java --version
117 | else
118 | echo -e "Temizlik Yapılmadı!!!\n "
119 | fi
120 |
121 |
122 | sleep 2
123 | echo -e "\n###### BİTTİ ######"
124 |
--------------------------------------------------------------------------------
/_2_Bash_Script/_6_maven.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 | echo "MAVEN"
3 |
4 |
5 | # User Variable
6 | UPDATED="Güncelleme"
7 | CLEANER="Temizleme"
8 | INSTALL="Yükleme"
9 | DELETED="Silme"
10 | WHICH="Nerede ?"
11 | COMMONINFORMATION=" Genel Bilgiler"
12 |
13 | # System Variable
14 |
15 | # Updated
16 | sleep 2
17 | echo -e "\n### ${UPDATED} ###"
18 | read -p "Güncelleme istiyor musunuz E/H ? " updatedResult
19 | if [[ $updatedResult == "E" || $updatedResult == "e" ]]
20 | then
21 | echo -e "Güncelleme Başlandı... "
22 | sudo apt-get update && sudo apt-get upgrade -y
23 | else
24 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
25 | fi
26 |
27 |
28 | # Common
29 | sleep 2
30 | echo -e "\n### ${COMMONINFORMATION} ###"
31 | read -p "Genel Bilgiler istiyor musunuz E/H ? " commonResult
32 | if [[ $commonResult == "E" || $commonResult == "e" ]]
33 | then
34 | echo -e "Genel Bilgiler Başlandı... "
35 | echo -e "Ben Kimim ... "
36 | sudo whoami
37 | echo -e "IP ... "
38 | sudo ifconfig
39 | echo -e "Portlar ... "
40 | sudo netstat -nlptu
41 | echo -e "Ram ... "
42 | sudo free -m
43 | else
44 | echo -e "Genel Bilgiler Gösterilmediı!!!\n "
45 | fi
46 |
47 | # Maven deleted
48 | sleep 2
49 | read -p "Maven Silmek istiyor musunuz E/H ? " deletedResult
50 | if [[ $deletedResult == "E" || $deletedResult == "e" ]]
51 | then
52 | echo -e "Güncelleme Başlandı... "
53 | echo -e "Temizlik Başlandı... "
54 | sudo apt-get clean
55 | sudo apt-get autoremove -y
56 | sudo apt-get purge maven
57 | sudo apt-get purge maven
58 | sudo rm -f apache-maven-3.6.3-bin.tar.gz
59 | sudo apt-get update && sudo apt-get upgrade -y
60 | else
61 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
62 | fi
63 |
64 | # MAVEN
65 | sleep 2
66 | echo -e "\n###### MAVEN ######"
67 | read -p "MAVEN Yükleme istiyor musunuz? E / H " installingResult
68 | if [[ $installingResult == "E" || $installingResult == "e" ]]
69 | then
70 | # Java
71 | echo -e "\n###### MAVEN" $INSTALL "######"
72 | echo -e "\n######" $WHICH "######"
73 | which maven
74 | which java
75 | which git
76 | sudo apt-get update
77 | echo -e "\n###### JAVA VERSION ######"
78 | java --version
79 | javac --version
80 | #sudo su
81 |
82 | sudo apt install maven
83 | sleep 1
84 | echo -e "Bağımlılıklar Yükleniyor"
85 | sudo apt install –f
86 | #cd /usr/local
87 | #sudo wget https://mirrors.estointernet.in/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
88 | #sudo tar xzf apache-maven-3.6.3-bin.tar.gz
89 | #sudo ln -s apache-maven-3.6.3 maven
90 | #JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
91 | #M2_HOME=/usr/local/maven
92 | #MAVEN_HOME=/usr/local/maven
93 | #PATH=${M2_HOME}/bin:${PATH}
94 | #sudo rm -rf /etc/profile.d/maven.sh
95 | ### echo -e "#Java Home\nJAVA_HOME=\"/usr/lib/jvm/java-11-openjdk-amd64/bin/\" " >> ~/.bashrc
96 | #echo -e "#Maven Home\n export" ${JAVA_HOME}\n" | sudo tee --append /etc/profile.d/maven.sh
97 | #echo -e "export" ${M2_HOME}\n" | sudo tee --append /etc/profile.d/maven.sh
98 | #echo -e "export" ${MAVEN_HOME}\n" | sudo tee --append /etc/profile.d/maven.sh
99 | #echo -e "export" ${PATH}\n" | sudo tee --append /etc/profile.d/maven.sh
100 | #sudo source /etc/profile.d/maven.sh
101 | echo -e "\n###### MAVEN VERSION ######"
102 | mvn -version
103 | else
104 | echo -e "Maven Güncelleme Yapılmadı!!!\n "
105 | fi
106 |
107 |
108 | # Temizlik
109 | sleep 2
110 | echo -e "\n###### Cache Temizleme ######"
111 | read -p "Cache Temizleme istiyor musunuz? E / H " cleanResult
112 | if [[ $cleanResult == "E" || $cleanResult == "e" ]]
113 | then
114 | echo -e "\n######" $CLEANER "######"
115 | echo -e "Temizlik Başlandı... "
116 | sudo apt-get clean
117 | sudo apt-get autoremove -y
118 | else
119 | echo -e "Temizlik Yapılmadı!!!\n "
120 | fi
121 |
122 |
123 | sleep 2
124 | echo -e "\n###### BİTTİ ######"
--------------------------------------------------------------------------------
/_2_Bash_Script/_9_postgresql.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 | echo "POSTGRESQL"
3 |
4 | # User Variable
5 | UPDATED="Güncelleme"
6 | CLEANER="Temizleme"
7 | INSTALL="Yükleme"
8 | DELETED="Silme"
9 | WHICH="Nerede ?"
10 | VERSION=Version
11 | COMMONINFORMATION="Genel Bilgiler"
12 |
13 | # System Variable
14 |
15 | # Updated
16 | sleep 2
17 | echo -e "\n### ${UPDATED} ###"
18 | read -p "Güncelleme istiyor musunuz E/H ? " updatedResult
19 | if [[ $updatedResult == "E" || $updatedResult == "e" ]]
20 | then
21 | echo -e "Güncelleme Başlandı... "
22 | sudo apt-get update && sudo apt-get upgrade -y
23 | else
24 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n"
25 | fi
26 |
27 | # Silmek
28 | sleep 2
29 | echo -e "\n### Postgresql Silmek ###"
30 | read -p "Postgresql Silmek istiyor musunuz E/H ? " deletedResult
31 | if [[ $deletedResult == "E" || $deletedResult == "e" ]]
32 | then
33 | echo -e "Postgresql Başlandı... "
34 | sudo apt remove postgresql postgresql-contrib -y
35 | sudo apt autoremove -y
36 | dpkg -l |grep postgres;
37 | sudo apt-get –purge remove postgresql postgresql-14 postgresql-client-common postgresql-common postgresql-contrib
38 | dpkg -l | grep postgres
39 | else
40 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
41 | fi
42 |
43 | # Common
44 | sleep 2
45 | echo -e "\n### ${COMMONINFORMATION} ###"
46 | read -p "Genel Bilgiler istiyor musunuz E/H ? " commonResult
47 | if [[ $commonResult == "E" || $commonResult == "e" ]]
48 | then
49 | echo -e "Genel Bilgiler Başlandı... "
50 | echo -e "Ben Kimim ... "
51 | sudo whoami
52 | echo -e "IP ... "
53 | sudo ifconfig
54 | echo -e "Portlar ... "
55 | sudo netstat -nlptu
56 | echo -e "Ram ... "
57 | sudo free -m
58 | else
59 | echo -e "Genel Bilgiler Gösterilmediı!!!\n "
60 | fi
61 |
62 | # Yükleme
63 | sleep 2
64 | echo -e "\n### ${UPDATED} ###"
65 | read -p "Postgresql'i Yükleme istiyor musunuz E/H ? " installingResult
66 | if [[ $installingResult == "E" || $installingResult == "e" ]]
67 | then
68 | echo -e "Yükleme Başlandı... "
69 |
70 | sleep 2
71 | sudo apt-get install wget unzip -y
72 | sudo apt-get install wget zip -y
73 | sudo apt install vim -y
74 | sudo apt install net-tools
75 | sudo ufw allow 5432
76 |
77 | sleep 2
78 | # sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
79 | echo -e "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main " | sudo tee --append /etc/apt/sources.list.d/pgdg.list
80 | sudo wget -q https://www.postgresql.org/media/keys/ACCC4CF8.asc -O - | sudo apt-key add -
81 | sudo apt-get -y install postgresql postgresql-contrib
82 |
83 | sleep 2
84 | echo -e "######Postgresql Enable"
85 | sudo systemctl enable postgresql
86 |
87 | sleep 2
88 | echo -e "Postgresql Start"
89 | sudo systemctl start postgresql
90 |
91 | #sudo systemctl status postgresql
92 |
93 | echo -e "Postgresql yeni şifre: sonarqube yapalım"
94 | # yeni şifre: sonarqube
95 | sudo passwd postgres
96 | su - postgres
97 | createuser sonar
98 | psql
99 | ALTER USER sonar WITH ENCRYPTED password 'sonar';
100 | CREATE DATABASE sonarqube OWNER sonar;
101 | grant all privileges on DATABASE sonarqube to sonar;
102 | \q
103 | exit
104 |
105 | sleep 2
106 | echo -e "Bağımlılıklar Yükleniyor"
107 | sudo apt install –f
108 |
109 | sleep 2
110 | echo -e "5432 PORT"
111 | sudo netstat -ntlp | grep 5432
112 | sudo netstat -nlptu
113 |
114 | else
115 | echo -e "Yükleme Yapılmadı!!!\n "
116 | fi
117 |
118 | # Temizlik
119 | sleep 2
120 | echo -e "\n###### Cache Temizleme ######"
121 | read -p "Cache Temizleme istiyor musunuz? E / H " cleanResult
122 | if [[ $cleanResult == "E" || $cleanResult == "e" ]]
123 | then
124 | echo -e "\n######" $CLEANER "######"
125 | echo -e "Temizlik Başlandı... "
126 | sudo apt-get clean
127 | sudo apt-get autoremove -y
128 | else
129 | echo -e "Temizlik Yapılmadı!!!\n "
130 | fi
131 |
132 |
133 | sleep 2
134 | echo -e "\n###### BİTTİ ######"
135 |
--------------------------------------------------------------------------------
/_2_Bash_Script/_1_common.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 |
3 | # Shell çalıştırmak
4 | # ./_1_common.sh
5 |
6 | # User Variable
7 | UPDATED="Güncelleme"
8 | NOT_UPDATED="Güncellenmedi"
9 | CLEANER="Temizleme"
10 | INSTALL="Yükleme"
11 | NOT_INSTALLED="Yüklenmedi"
12 | DELETED="Silme"
13 | COMMON_INFORMATION="Genel Bilgiler"
14 | ERROR="Hata"
15 | WARNING="Uyarı"
16 | SUCCESS="Başarılı"
17 | FAILED="Başarısız"
18 | NOT_FOUND="Bulunamadı"
19 | CHMOD="Dosya İzinleri Vermek"
20 |
21 | # Güncelleme
22 | sleep 2
23 | echo -e "\n $UPDATED "
24 | read -p "Güncelleme İstiyor musunuz ? E/H " updateUserResponse
25 | if [[ $updateUserResponse == "E" || $updateUserResponse == "e" ]]
26 | then
27 | echo -e "Güncelleme Başlandı... "
28 | sudo apt-get update && sudo apt-get upgrade -y
29 | else
30 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
31 | fi
32 |
33 |
34 | # Dosya İzinleri ver
35 | sleep 2
36 | echo -e "\n DOSYA IZINLERI"
37 | read -p "Dosyalara izin vermek istiyor musunuz E/H " chmodUserResponse
38 | if [[ $chmodUserResponse == "E" || $chmodUserResponse == "e" ]]
39 | then
40 | echo -e "\n Dosya İzinleri Yetkilendirilmeleri Veriliyor"
41 | sleep 1
42 | # chmod -R 777 /var/www/html
43 | sudo chmod +x _1_common.sh
44 | sudo chmod +x _2_git.sh
45 | sudo chmod +x _3_vs_code.sh
46 | sudo chmod +x _4_nodejs.sh
47 | sudo chmod +x _5_jdk.sh
48 | sudo chmod +x _6_maven.sh
49 | sudo chmod +x _7_apache_tomcat.sh
50 | sudo chmod +x _8_docker.sh
51 | sudo chmod +x _9_postgresql.sh
52 | sudo chmod +x _10_sonarQube.sh
53 | sudo chmod +x _14_AllVersion.sh
54 | echo -e "\n Dosya İzinleri Verildi"
55 | else
56 | echo -e "\n Dosya İzinleri Verilmedi"
57 | fi
58 |
59 | # Genel Bilgiler
60 | sleep 2
61 | echo -e "\n GENEL BILGILER"
62 | read -p "Genel Bilgiler istiyor musunuz E/H ? " commonResult
63 | if [[ $commonResult == "E" || $commonResult == "e" ]]
64 | then
65 | echo -e "Genel Bilgiler Başlandı... "
66 |
67 | sleep 1
68 | echo -e "Ben Kimim ... "
69 | sudo whoami
70 |
71 | sleep 1
72 | echo -e "Linux Dağıtımı Bilgileri ... "
73 | sudo lsb_release -a
74 |
75 | sleep 1
76 | echo -e "Disk alanım. "
77 | sudo df -m
78 |
79 | sleep 1
80 | echo -e "IP ... "
81 | sudo ifconfig
82 |
83 | sleep 1
84 | echo -e "Portlar ... "
85 | sudo netstat -nlptu
86 |
87 | sleep 1
88 | echo -e "Ram ... "
89 | sudo free -m
90 |
91 | sleep 1
92 | echo -e "Cpu ... "
93 | sudo cat /proc/cpuinfo
94 | else
95 | echo -e "Genel Bilgiler Gösterilmediı!!!\n "
96 | fi
97 |
98 |
99 | # Yükleme
100 | sleep 2
101 | echo -e "\n GENEL YÜKLEME"
102 | read -p "Genel Yükleme Yapmak İstiyor musunuz E/H ? " commonResult
103 | if [[ $commonResult == "E" || $commonResult == "e" ]]
104 | then
105 | echo -e "Genel Yükleme Bilgileri Başlandı... "
106 |
107 | sleep 1
108 | pwd
109 | echo -e "Genel yükleme başlıyor ... "
110 | sudo apt-get install -y net-tools
111 | sudo apt-get install -y openssh-server
112 | sudo apt-get install -y curl
113 | sudo apt-get install -y wget
114 | sudo apt-get install -y git
115 | sudo apt-get install -y vim
116 | sudo apt-get install -y nano
117 | sudo apt-get install -y zip
118 | sudo apt-get install -y unzip
119 | sudo apt-get install -y tar
120 | sudo apt-get install -y gzip
121 | sudo apt-get install -y bzip2
122 | sudo apt-get install -y rar
123 | sudo apt-get install -y unrar
124 | else
125 | echo -e "Genel Bilgiler Gösterilmediı!!!\n "
126 | fi
127 |
128 |
129 | # PORT
130 | sleep 2
131 | echo -e "\n PORT"
132 | read -p "Port Aktif etmek ve izin Vermek istiyor musunuz ? E/H " updateUserResponse
133 | if [[ $updateUserResponse == "E" || $updateUserResponse == "e" ]]
134 | then
135 | echo -e "Port İşlemlerine Başlandı... "
136 | sudo netstat -nlptu
137 | sudo ufw allow 22
138 | sudo ufw allow 80
139 | sudo ufw allow 443
140 | sudo ufw allow 1111
141 | sudo ufw allow 2222
142 | sudo ufw allow 3333
143 | sudo ufw allow 4444
144 | sudo ufw allow 8080
145 | sudo ufw allow 8000
146 | sudo ufw allow 9000
147 | sudo ufw allow 3306
148 | sudo ufw allow 5432
149 | else
150 | echo -e "Port Güncelleme Yapılmadı!!!\n "
151 | fi
152 |
153 | # TEMİZLEME
154 | sleep 2
155 | echo -e "\n TEMİZLE"
156 | read -p "Cache yapmak istiyor musunuz ? E/H " updateUserResponse
157 | if [[ $updateUserResponse == "E" || $updateUserResponse == "e" ]]
158 | then
159 | echo -e "\nTemizle Başlandı... "
160 | sudo apt-get clean
161 | sudo apt-get autoremove -y
162 |
163 | else
164 | echo -e "Temizlik Yapılmadı!!!\n "
165 | fi
--------------------------------------------------------------------------------
/_3_Git_GitHub/1_Git_Information.txt:
--------------------------------------------------------------------------------
1 | Git
2 | ---
3 | 2005 Linus Torvalds
4 | Ücretsiz
5 | Açık kaynak kodludur.
6 | YEdekleme imkanı sağlar
7 | Proje takibini sağlar.
8 | Birden fazla kişilerle çalışmayı sağlar.
9 | Global Information Tracked
10 | VCS: Version Control FileSystem
11 | En önemli özelliği dağıtık mimariye ship olmasıdır.
12 |
13 | ---------------------------------------------------------------
14 | ## INIT ##
15 | git init
16 | git status
17 | git add .
18 | git commit -m "Dev-Middle-Project"
19 | git remote add origin URL
20 | git push -u origin master (u => --set-upstream)
21 | git push
22 |
23 | ---------------------------------------------------------------
24 | ## CLONE ##
25 | git clone https://github.com/hamitmizrak/Techcareer-Middle-DevOps-Subat
26 |
27 |
28 | ---------------------------------------------------------------
29 | ## CONFIG ##
30 | git config --global user.name
31 | git config --global user.name "Hamit Mızrak"
32 | git config --global user.email
33 | git config --global user.email "hamitmizrak@gmail.com"
34 | git config --global -l
35 | git config --global core.editor "notepad++"
36 |
37 | ---------------------------------------------------------------
38 | ## GIT COMMON ##
39 | git --help (Komutları hatırlamak)
40 | git status (Durumu öğrenmek)
41 |
42 | ---------------------------------------------------------------
43 | ## ADD ##
44 | git add .
45 | git commit -m "Data"
46 |
47 | # Add komutunu yazmadan direk commit üzerinden add yapalım.
48 | git commit -a -m "Data2"
49 |
50 |
51 | ---------------------------------------------------------------
52 | ## ALIAS ##
53 | git log
54 | git log --decorate --oneline --graph --all
55 | git config --global alias.log44 "log --decorate --oneline --graph --all"
56 | git log44
57 |
58 |
59 | ---------------------------------------------------------------
60 | ## REMOTE ##
61 | git remote
62 | URL Değiştirmek => git remote set-url origin2 yeniURL
63 |
64 |
65 | ---------------------------------------------------------------
66 | ## CHECKOUT/SWITCH ##
67 | Dikkat: checkout tyapmadan önce add yapmanız gerekmektedir.
68 | git log
69 | git checkout hashCode(En az 7 karakter)
70 | git checkout master
71 |
72 | ---------------------------------------------------------------
73 | ## STASH ##
74 | Dikkat: stash tyapmadan önce add yapmanız gerekmektedir.
75 | git add .
76 | git stash
77 | git stash save "customiseStashName"
78 | git stash list
79 | git stash apply stash@{0}
80 | git stash drop stash@{0}
81 | git stash pop
82 |
83 |
84 | ---------------------------------------------------------------
85 | ## BRANCH/ MERGE/REBASE ##
86 | git branch -M main
87 | git add .
88 | git commit -m "branch öncesi"
89 | git push
90 |
91 | git branch (local branch)
92 | git branch -a (Remote+local branch)
93 |
94 | git log44
95 |
96 | git branch backend (branch oluştur)
97 | git checkout backend (branch dallan)
98 | git add .
99 | git commit -m "backend"
100 | git push origin backend (backend push)
101 | cat >> backend.txt
102 | git add .
103 | git commit -m "backend data"
104 | git push -u origin backend
105 | git commit -a -m "backend data-2"
106 | git push
107 | git switch master
108 | git checkout master
109 | git merge backend
110 | git branch -D backend (silme)
111 |
112 | git checkout master
113 | git merge backend (backend'i master'a birleştirme)
114 | git merge backend --no-ff (backend'i master'a birleştirme)
115 | cat >> frontend.txt
116 | git add .
117 | git commit -m "backend data"
118 | git push -u origin backend
119 | git commit -a -m "backend data-2"
120 | git push
121 | git switch master
122 | git checkout master
123 | git merge backend
124 |
125 | git checkout -b frontend (branch oluşturup dallanma)
126 |
127 | ---------------------------------------------------------------
128 | ## REBASE ##
129 |
130 | ---------------------------------------------------------------
131 | ## PULL/FETCH ##
132 | git pull origin master
133 | git pull origin backend
134 | git pull origin frontend
135 |
136 | git remote
137 | git remote -v
138 |
139 | git fetch origin
140 | git branch -a
141 | git checkout remotes/origin/master
142 | git checkout master
143 | git merge origin/master
144 |
145 | ---------------------------------------------------------------
146 | ## TAG ##
147 | git tag -a v1.0.0 -m "version 1.0"
148 | git tag
149 | git show v1.0.0
150 | git push origin v1.0.0
151 | git push origin --tags
152 | git tag -d v1.0.0
153 | git push origin :refs/tags/v1.0.0
154 |
155 | ---------------------------------------------------------------
156 | ## GİTHUB ##
157 | Tamamdır.
158 |
159 | ---------------------------------------------------------------
160 | ## SSH-KEYGEN ##
161 | ssh-keygen -t rsa -b 4096 -C "hamitmizrak@gmail.com"
162 | eval `ssh-agent -s` ==> Agent pid 681
163 | ssh -T git@github.com ==> SSH bağlantısı yapıldı mı ?
164 |
165 | Windows => C:\Users\90553\.ssh
166 | Linux => cd ~/.ssh/id_rsa.pub
167 | Public Şifre verdi
168 |
169 | GitHub Adresine Yapıştır
170 | https://github.com/settings/keys
171 |
172 |
173 | ---------------------------------------------------------------
174 | ## CONFLICT ##
175 |
176 |
--------------------------------------------------------------------------------
/_2_Bash_Script/_8_docker.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 | echo "DOCKER"
3 |
4 | # User Variable
5 | UPDATED="Güncelleme"
6 | CLEANER="Temizleme"
7 | INSTALL="Yükleme"
8 | DELETED="Silme"
9 | WHICH="Nerede ?"
10 | COMMONINFORMATION=" Genel Bilgiler"
11 | LOGIN="Docker Login"
12 | LOGOUT="Docker Logout"
13 | DOCKER_PULL="Docker Pulling"
14 |
15 | # System Variable
16 |
17 | # Updated
18 | sleep 2
19 | echo -e "\n### ${UPDATED} ###"
20 | read -p "Güncelleme istiyor musunuz E/H ? " updatedResult
21 | if [[ $updatedResult == "E" || $updatedResult == "e" ]]
22 | then
23 | echo -e "Güncelleme Başlandı... "
24 | sudo apt-get update && sudo apt-get upgrade -y
25 | else
26 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
27 | fi
28 |
29 |
30 | # Common
31 | sleep 2
32 | echo -e "\n### ${COMMONINFORMATION} ###"
33 | read -p "Genel Bilgiler istiyor musunuz E/H ? " commonResult
34 | if [[ $commonResult == "E" || $commonResult == "e" ]]
35 | then
36 | echo -e "Genel Bilgiler Başlandı... "
37 | echo -e "Ben Kimim ... "
38 | sudo whoami
39 | echo -e "IP ... "
40 | sudo ifconfig
41 | echo -e "Portlar ... "
42 | sudo netstat -nlptu
43 | echo -e "Ram ... "
44 | sudo free -m
45 | else
46 | echo -e "Genel Bilgiler Gösterilmediı!!!\n "
47 | fi
48 |
49 | # DOCKER
50 | sleep 2
51 | echo -e "\n###### DOCKER ######"
52 | read -p "DOCKER Yükleme istiyor musunuz? E / H " installingResult
53 | if [[ $installingResult == "E" || $installingResult == "e" ]]
54 | then
55 | # Java
56 | echo -e "\n###### DOCKER" $INSTALL "######"
57 | echo -e "\n######" $WHICH "######"
58 | which maven
59 | which java
60 | which git
61 | sudo apt-get update
62 | java -version
63 | git -v
64 | maven -v
65 |
66 | # Eğer önceden Docker varsa sil
67 | sudo apt-get purge docker-ce docker-ce-cli containerd.io -y
68 | sudo rm -rf /var/lib/docker
69 | sudo rm -rf /var/lib/containerd
70 | sudo apt-get clean
71 | sudo apt-get autoremove -y
72 | sudo apt-get update
73 | sudo apt-get remove docker docker-engine docker.io containerd runc
74 | sudo apt-get update
75 | sudo apt-get upgrade
76 |
77 | ### HTTPS üzerinden bir depo kullanmasına izin vermek için##################################
78 | sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common -y
79 |
80 | ### Docker’ın resmi GPG anahtarını ekleyiniz. curl aracı ile GPG anahtarını komut içerisine aktarınız
81 | sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
82 | sudo apt-key fingerprint 0EBFCD88
83 |
84 | ### curl aracı ile Docker apt deposunu eklemek
85 | sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
86 |
87 | ###############DOCKER KURULUMU##########################################
88 | sudo apt-get update
89 | sudo apt-get install docker-ce docker-ce-cli containerd.io -y
90 |
91 | # sudo systemctl status docker
92 | # sleep 2
93 | # q
94 | sudo systemctl enable --now docker
95 | sudo systemctl start docker
96 | # sudo systemctl status docker
97 |
98 | ### kullanıcı adınızı docker grubuna ekle
99 | sudo usermod -aG docker ${USER}
100 |
101 | su - ${USER}
102 | sudo id -NG
103 | sudo apt-get install bash-completion
104 | docker version
105 | docker run hello-world
106 | sleep 1
107 | echo -e "Bağımlılıklar Yükleniyor"
108 | sudo apt install –f
109 | else
110 | echo -e "Docker Güncelleme Yapılmadı!!!\n "
111 | fi
112 |
113 |
114 |
115 |
116 | # Docker Login
117 | sleep 2
118 | echo -e "\n### ${LOGIN} ###"
119 | read -p "\nDockerHub'a Giriş yapmak istiyor musunuz ? E/H? " updatedResult
120 | if [[ $updatedResult == "E" || $updatedResult == "e" ]]
121 | then
122 | echo -e "Docker Login ... "
123 | sudo docker login
124 | else
125 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
126 | fi
127 |
128 |
129 | # Docker Logout
130 | sleep 2
131 | echo -e "\n### ${LOGOUT} ###"
132 | read -p "\nDockerHub'a Çıkış yapmak istiyor musunuz ? E/H? " updatedResult
133 | if [[ $updatedResult == "E" || $updatedResult == "e" ]]
134 | then
135 | echo -e "Docker Login ... "
136 | sudo docker logout
137 | else
138 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
139 | fi
140 |
141 |
142 | # Docker Pull
143 | sleep 2
144 | echo -e "\n### ${DOCKER_PULL} ###"
145 | read -p "\nDockerHub'a Pull yapmak istiyor musunuz ? E/H? " updatedResult
146 | if [[ $updatedResult == "E" || $updatedResult == "e" ]]
147 | then
148 | echo -e "Docker Pulling ... "
149 | sudo docker pull nginx
150 | sudo docker pull httpd
151 | sudo docker pull mysql
152 | sudo docker pull mongo
153 | sudo docker pull ubuntu
154 | sudo docker pull centos
155 | else
156 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
157 | fi
158 |
159 | # Temizlik
160 | sleep 2
161 | echo -e "\n###### Cache Temizleme ######"
162 | read -p "Cache Temizleme istiyor musunuz? E / H " cleanResult
163 | if [[ $cleanResult == "E" || $cleanResult == "e" ]]
164 | then
165 | echo -e "\n######" $CLEANER "######"
166 | echo -e "Temizlik Başlandı... "
167 | sudo apt-get clean
168 | sudo apt-get autoremove -y
169 | else
170 | echo -e "Temizlik Yapılmadı!!!\n "
171 | fi
172 |
173 |
174 | sleep 2
175 | echo -e "\n###### BİTTİ ######"
176 |
--------------------------------------------------------------------------------
/_5_SonarQube/conf/wrapper.conf:
--------------------------------------------------------------------------------
1 | # Java Additional Parameters
2 | wrapper.java.additional.1=-Djava.awt.headless=true
3 | wrapper.java.additional.2=-XX:MaxPermSize=128m
4 |
5 | # RECOMMENDED : uncomment if Java Virtual Machine is a JDK but not a JRE. To know which JVM you use, execute
6 | # 'java -version'. JDK displays 'Server VM'.
7 | # wrapper.java.additional.3=-server
8 |
9 | # Initial Java Heap Size (in MB)
10 | wrapper.java.initmemory=256
11 |
12 | # Maximum Java Heap Size (in MB)
13 | wrapper.java.maxmemory=512
14 |
15 | #********************************************************************
16 | # Wrapper Java Properties
17 | #********************************************************************
18 | # JVM
19 | # Can be an absolute path, for example:
20 | wrapper.java.command=C:\Program Files\Java\jdk-11\bin/java
21 | #wrapper.java.command=java
22 |
23 | # Java Main class. This class must implement the WrapperListener interface
24 | # or guarantee that the WrapperManager class is initialized. Helper
25 | # classes are provided to do this for you. See the Integration section
26 | # of the documentation for details.
27 | wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp
28 |
29 | # Java Classpath (include wrapper.jar) Add class path elements as
30 | # needed starting from 1
31 | wrapper.java.classpath.1=../../lib/*.jar
32 | wrapper.java.classpath.2=../../
33 | wrapper.java.classpath.3=../../extensions/jdbc-driver/mysql/*.jar
34 | wrapper.java.classpath.4=../../extensions/jdbc-driver/oracle/*.jar
35 | wrapper.java.classpath.5=../../extensions/jdbc-driver/postgresql/*.jar
36 | wrapper.java.classpath.6=../../extensions/jdbc-driver/mssql/*.jar
37 |
38 | # Java Library Path (location of Wrapper.DLL or libwrapper.so)
39 | wrapper.java.library.path.1=./lib
40 |
41 | # Application parameters. Add parameters as needed starting from 1
42 | wrapper.app.parameter.1=org.sonar.application.StartServer
43 |
44 | #********************************************************************
45 | # Profiling and debbuging - for development only
46 | # If wrapper.java.additional.3=-server is not commented, parameter ids should start from 4 instead of 3.
47 | #********************************************************************
48 | # Java remote debugging
49 | #wrapper.java.additional.3=-agentlib:jdwp=transport=dt_socket,server=y,address=8000
50 |
51 | # JProfiler 5
52 | #wrapper.java.additional.3=-Xint
53 | #wrapper.java.additional.4=-agentlib:jprofilerti=port=8849
54 | #wrapper.java.additional.5=-Xbootclasspath/a:/Applications/jprofiler5/bin/agent.jar
55 |
56 | # JMX remote monitoring on Sun JVM (warning, security is disabled)
57 | #wrapper.java.additional.3=-Dcom.sun.management.jmxremote
58 | #wrapper.java.additional.4=-Dcom.sun.management.jmxremote.port=9005
59 | #wrapper.java.additional.5=-Dcom.sun.management.jmxremote.authenticate=false
60 | #wrapper.java.additional.6=-Dcom.sun.management.jmxremote.ssl=false
61 |
62 | #********************************************************************
63 | # Wrapper Logging Properties
64 | #********************************************************************
65 | # Format of output for the console. (See docs for formats)
66 | wrapper.console.format=PM
67 |
68 | # Log Level for console output. (See docs for log levels)
69 | wrapper.console.loglevel=INFO
70 |
71 | # Log file to use for wrapper output logging.
72 | wrapper.logfile=../../logs/sonar.log
73 |
74 | # Format of output for the log file. (See docs for formats)
75 | wrapper.logfile.format=LPTM
76 |
77 | # Log Level for log file output. (See docs for log levels)
78 | wrapper.logfile.loglevel=INFO
79 |
80 | # Maximum size that the log file will be allowed to grow to before
81 | # the log is rolled. Size is specified in bytes. The default value
82 | # of 0, disables log rolling. May abbreviate with the 'k' (kb) or
83 | # 'm' (mb) suffix. For example: 10m = 10 megabytes.
84 | #wrapper.logfile.maxsize=0
85 |
86 | # Maximum number of rolled log files which will be allowed before old
87 | # files are deleted. The default value of 0 implies no limit.
88 | #wrapper.logfile.maxfiles=0
89 |
90 | # Log Level for sys/event log output. (See docs for log levels)
91 | wrapper.syslog.loglevel=NONE
92 |
93 | #********************************************************************
94 | # Wrapper Windows Properties
95 | #********************************************************************
96 | # Title to use when running as a console
97 | wrapper.console.title=Sonar
98 |
99 | # Disallow start of multiple instances of an application at the same time on Windows
100 | wrapper.single_invocation=true
101 |
102 | #********************************************************************
103 | # Wrapper Windows NT/2000/XP Service Properties
104 | #********************************************************************
105 | # WARNING - Do not modify any of these properties when an application
106 | # using this configuration file has been installed as a service.
107 | # Please uninstall the service before modifying this section. The
108 | # service can then be reinstalled.
109 |
110 | # Name of the service
111 | wrapper.ntservice.name=Sonar
112 |
113 | # Display name of the service
114 | wrapper.ntservice.displayname=Sonar
115 |
116 | # Description of the service
117 | wrapper.ntservice.description=Sonar
118 |
119 | # Service dependencies. Add dependencies as needed starting from 1
120 | wrapper.ntservice.dependency.1=
121 |
122 | # Mode in which the service is installed. AUTO_START or DEMAND_START
123 | wrapper.ntservice.starttype=AUTO_START
124 |
125 | # Allow the service to interact with the desktop.
126 | wrapper.ntservice.interactive=false
127 |
128 | #********************************************************************
129 | # restart the process if CPU is heavily loaded during 240 seconds.
130 | wrapper.ping.timeout=240
131 |
--------------------------------------------------------------------------------
/_2_Bash_Script/_10_sonarQube.sh:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 | echo "SonarQube Yüklerken bunlara dikkat et"
3 | sleep 2
4 | echo -e "Ubuntu 22.04 LTS with minimum 2GB RAM and 1 CPU."
5 | sleep 2
6 | echo -e "PostgreSQL Version 9.3 or higher."
7 | sleep 2
8 | echo -e "SSH access with sudo privileges"
9 | sleep 2
10 | echo -e "Firewall Port: 9000 yapmalısın"
11 |
12 |
13 | # User Variable
14 | UPDATED="Güncelleme"
15 | CLEANER="Temizleme"
16 | INSTALL="Yükleme"
17 | DELETED="Silme"
18 | WHICH="Nerede ?"
19 | VERSION=Version
20 | COMMONINFORMATION=" Genel Bilgiler"
21 |
22 | # System Variable
23 |
24 | # Updated
25 | sleep 2
26 | echo -e "\n### ${UPDATED} ###"
27 | read -p "Güncelleme istiyor musunuz E/H ? " updatedResult
28 | if [[ $updatedResult == "E" || $updatedResult == "e" ]]
29 | then
30 | echo -e "Güncelleme Başlandı... "
31 | sudo apt-get update && sudo apt-get upgrade -y
32 | else
33 | echo -e "apt-get Update List Güncelleme Yapılmadı!!!\n "
34 | fi
35 |
36 |
37 | # Common
38 | sleep 2
39 | echo -e "\n### ${COMMONINFORMATION} ###"
40 | read -p "Genel Bilgiler istiyor musunuz E/H ? " commonResult
41 | if [[ $commonResult == "E" || $commonResult == "e" ]]
42 | then
43 | echo -e "Genel Bilgiler Başlandı... "
44 | echo -e "Ben Kimim ... "
45 | sudo whoami
46 | echo -e "IP ... "
47 | sudo ifconfig
48 | echo -e "Portlar ... "
49 | sudo netstat -nlptu
50 | echo -e "Ram ... "
51 | sudo free -m
52 | else
53 | echo -e "Genel Bilgiler Gösterilmediı!!!\n "
54 | fi
55 |
56 | # Yükleme
57 | sleep 2
58 | echo -e "\n### ${UPDATED} ###"
59 | read -p "SonarQube'i Yükleme istiyor musunuz E/H ? " installingResult
60 | if [[ $installingResult == "E" || $installingResult == "e" ]]
61 | then
62 | echo -e "###### Yükleme Başlandı... ###### "
63 | sudo ufw allow 9000
64 |
65 | sleep 2
66 | sudo sysctl -w vm.max_map_count=524288
67 | sudo sysctl -w fs.file-max=131072
68 | sudo ulimit -n 131072
69 | sudo ulimit -u 8192
70 | sudo ufw allow 9000
71 |
72 | sleep 2
73 | #echo -e "#SonarQube Home\nsonarqube - nofile 65536\nsonarqube - nproc 4096 " >> /etc/security/limits.conf
74 | echo -e "#SonarQube Home\nsonarqube - nofile 65536\nsonarqube - nproc 4096 " | sudo tee --append /etc/security/limits.conf
75 |
76 | cd /tmp
77 | sudo wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-9.9.0.65466.zip
78 | sudo unzip sonarqube-9.9.0.65466.zip -d /opt
79 | sudo mv /opt/sonarqube-9.9.0.65466 /opt/sonarqube
80 | sudo groupadd sonar
81 | sudo useradd -c "user to run SonarQube" -d /opt/sonarqube -g sonar sonar
82 | sudo chown sonar:sonar /opt/sonarqube -R
83 | echo -e "### Sonar Config Yükleme Başlandı... "
84 | echo -e "#SonarQube Config" | sudo tee --append /opt/sonarqube/conf/sonar.properties
85 | echo -e "sonar.jdbc.username=sonar" | sudo tee --append /opt/sonarqube/conf/sonar.properties
86 | echo -e "sonar.jdbc.password=sonarqube" | sudo tee --append /opt/sonarqube/conf/sonar.properties
87 | echo -e "sonar.jdbc.url=jdbc:postgresql://localhost:5432/sonarqube" | sudo tee --append /opt/sonarqube/conf/sonar.properties
88 | echo -e "sonar.web.port=9000 " | sudo tee --append /opt/sonarqube/conf/sonar.properties
89 | echo -e "#sonar.web.host=127.0.0.1 " | sudo tee --append /opt/sonarqube/conf/sonar.properties
90 | echo -e "#sonar.web.context=/sonar" | sudo tee --append /opt/sonarqube/conf/sonar.properties
91 | echo -e "RUN_AS_USER=sonar" | sudo tee --append /opt/sonarqube/bin/linux-x86-64/sonar.sh
92 |
93 | echo -e "#my special Sonar" | sudo tee --append /etc/systemd/system/sonar.service
94 | echo -e "[Unit]" | sudo tee --append /etc/systemd/system/sonar.service
95 | echo -e "Description=SonarQube service" | sudo tee --append /etc/systemd/system/sonar.service
96 | echo -e "After=syslog.target network.target" | sudo tee --append /etc/systemd/system/sonar.service
97 | echo -e "[Service]" | sudo tee --append /etc/systemd/system/sonar.service
98 | echo -e "Type=forking" | sudo tee --append /etc/systemd/system/sonar.service
99 | echo -e "ExecStart=/opt/sonarqube/bin/linux-x86-64/sonar.sh start" | sudo tee --append /etc/systemd/system/sonar.service
100 | echo -e "ExecStop=/opt/sonarqube/bin/linux-x86-64/sonar.sh stop" | sudo tee --append /etc/systemd/system/sonar.service
101 | echo -e "User=sonar" | sudo tee --append /etc/systemd/system/sonar.service
102 | echo -e "Group=sonar" | sudo tee --append /etc/systemd/system/sonar.service
103 | echo -e "Restart=always" | sudo tee --append /etc/systemd/system/sonar.service
104 | echo -e "LimitNOFILE=65536" | sudo tee --append /etc/systemd/system/sonar.service
105 | echo -e "LimitNPROC=4096" | sudo tee --append /etc/systemd/system/sonar.service
106 | echo -e "[Install]" | sudo tee --append /etc/systemd/system/sonar.service
107 | echo -e "WantedBy=multi-user.target" | sudo tee --append /etc/systemd/system/sonar.service
108 |
109 |
110 | echo -e "Bağımlılıklar Yükleniyor"
111 | sudo apt install –f
112 |
113 | echo -e "### Sudo su sonar başladı... ################################ "
114 | # sudo su sonar
115 | # echo -e "./sonar.sh start" | sudo tee --append /opt/sonarqube/bin/linux-x86-64
116 | # echo -e "./sonar.sh status" | sudo tee --append /opt/sonarqube/bin/linux-x86-64
117 | # echo -e "tail" | sudo tee --append /opt/sonarqube/logs/sonar.log
118 | # echo -e "./sonar.sh stop" | sudo tee --append /opt/sonarqube/bin/linux-x86-64
119 | # exit
120 | sudo su sonar
121 | cd /opt/sonarqube/bin/linux-x86-64/
122 | ./sonar.sh start
123 | ./sonar.sh status
124 | tail /opt/sonarqube/logs/sonar.log
125 | cd /opt/sonarqube/bin/linux-x86-64/
126 | ./sonar.sh stop
127 | exit
128 |
129 | # bunu yazmazsan çalışmaz
130 | sudo sysctl -w vm.max_map_count=262144
131 | sysctl vm.max_map_count
132 | sudo netstat -ntlp | grep 9000
133 | #journalctl -u sonar
134 |
135 | echo -e "### systemctl daemon-reload ################################ "
136 | sudo systemctl daemon-reload
137 | sudo systemctl enable sonar
138 | sudo systemctl start sonar
139 | sudo systemctl restart sonar
140 | else
141 | echo -e "Yükleme Yapılmadı!!!\n "
142 | fi
143 |
144 | # Temizlik
145 | sleep 2
146 | echo -e "\n###### Cache Temizleme ######"
147 | read -p "Cache Temizleme istiyor musunuz? E / H " cleanResult
148 | if [[ $cleanResult == "E" || $cleanResult == "e" ]]
149 | then
150 | echo -e "\n######" $CLEANER "######"
151 | echo -e "Temizlik Başlandı... "
152 | sudo apt-get clean
153 | sudo apt-get autoremove -y
154 | else
155 | echo -e "Temizlik Yapılmadı!!!\n "
156 | fi
157 |
158 |
159 | sleep 2
160 | echo -e "\n###### BİTTİ ######"
161 |
--------------------------------------------------------------------------------
/_1_Linux_Ubuntu/1_Linux_ubuntu_Information.txt:
--------------------------------------------------------------------------------
1 | İşletim Sistemi = Donanım+Yazılım
2 |
3 | İşletim Sistemi yapıları = Kernel(Çekirdek) + Shell(Kabuk)
4 | Shell(Kabuk) = Kullanıcıdan gelen istekleri (Request) , kernel(Çekirdeğe) iletiyor.
5 | Kernel(Çekirdek): Yazılım + Donanım arasındaki haberleşmeyi sağlıyor.
6 | End user(Son kullanıcı) Client
7 |
8 | Shell
9 | bash ( Bourne Again Shell ) : Linux Default gelen kabuttur.
10 | sh
11 |
12 | -------------------------------------------------------------------------
13 |
14 | Port
15 | 2^16= 65536 port
16 | 0 <= PORT <= 1023 (Well-Know Port)
17 | 0 =>
18 | 20 => FTP (File Transfer Protocol)
19 | 22 => SSH
20 | 23 => Telnet
21 | 80 => Http Reverse Proxy (nginx)
22 | 80 => Http Reverse Proxy (docker)
23 | 443 => Https SSL
24 |
25 |
26 | 1024 <= PORT <= 49151 (Registed Port)
27 | 3306 => Mysql
28 | 5432 => Postgresql
29 | 6379 => Redis
30 | 27017 => Mongo
31 | 3000 => Node js + React JS
32 |
33 |
34 | 49152<= PORT <= 65535 ( Dynamics Port)
35 | sudo ufw status (inactive)
36 | sudo ufw enable
37 | sudo ufw allow 22
38 | sudo -nlptu
39 | sudo netstat -nlptu
40 |
41 |
42 | -------------------------------------------------------------------------
43 |
44 | Linux, Ubuntu, Centos
45 | Linux: 1990 Linus Torvalds yazıldı.
46 | Linux ücretsiz
47 | Unix ücretli
48 | Ubuntu = Linux dağıtımlarından en popüler olanıdır.
49 | Canonical Company sağlanıyor.
50 | GNU : Gnu is Not Unit
51 | GPL : Free as In Freedom (GNU General Public Lisans)
52 | GPL Temel Özgürlük İlkesi
53 | programı sınırsız kullan.
54 | programı inceleme, değiştirme.
55 | programı kopyalama.
56 | programı dağıt.
57 |
58 |
59 | -------------------------------------------------------------------------
60 |
61 | Ubuntu;
62 | Ubuntu: Güney Afrika dilinde Başka nesneler saygıdır.
63 | bir linux dağıtımıdır.
64 | İşletim sistemidir.
65 | Ücretsiz
66 | Açık kaynak kodludur (opan source)
67 | Ubuntu Debian kernel(Çekirdek)
68 | Linux ==> Debian ==> Ubuntu
69 | 2004 yılında piyasaya sürülmüştür.
70 |
71 | -------------------------------------------------------------------------
72 |
73 | PID: Process ID
74 | clear
75 |
76 | -------------------------------------------------------------------------
77 |
78 | sudo apt-get update
79 | sudo apt-get upgrade
80 | sudo apt-get upgrade -y
81 | sudo apt-get dist-upgrade
82 |
83 | sudo apt-get update && sudo apt-get upgrade -y && sudo apt-get dist-upgrade
84 |
85 | -------------------------------------------------------------------------
86 |
87 | Http
88 | Http Status Codes
89 | 1XX = Information
90 | 2XX = Success
91 | 3XX = Redirection
92 | 4XX = Client Error
93 | 5XX = Server Error
94 |
95 | -------------------------------------------------------------------------
96 |
97 | Operation Format Installing
98 | ubuntu deb apt,apt-get
99 | centos rpm yum
100 | fedora rpm dnf
101 |
102 | sudo apt-get install vim
103 | sudo apt install vim
104 | sudo apt install vim -y
105 | sudo apt install -f vim -y (Eğer yükleme zamanında eksik dosyalar varsa sisteme yüklesin)
106 |
107 | apt install leafpad
108 |
109 |
110 | -------------------------------------------------------------------------
111 |
112 | Linux Dosya Sistemleri
113 | cd /
114 | cd ~
115 |
116 | /boot
117 | /dev =>
118 | /etc =>
119 | /home =>
120 | /lib =>
121 | /media =>
122 | /opt => Opsiyonel
123 | /proc => kaynak bilgileri
124 | /root => dosya dizini
125 | /snap => yeni nesil paket yönetimi
126 | /tmp => geçici dosyaları
127 | /var => dinamik olarak değişen log, mailbox dosyalar burada barındırılır.
128 |
129 |
130 | -------------------------------------------------------------------------
131 |
132 | lsb_release -a (Linux Dağıtımı hakkında bilgi almak kullanırız.)
133 |
134 | -------------------------------------------------------------------------
135 |
136 | clear
137 | sudo apt-get install vlc
138 | sudo snap install vlc
139 | sudo snap list
140 | sudo snap reflesh
141 | sudo snap remove vlc --purge
142 |
143 | -------------------------------------------------------------------------
144 |
145 | curl --version
146 | sudo apt install curl
147 | curl --version
148 | curl google.com
149 | ping google.com
150 | man mkdir
151 | info mkdir
152 | whereis java
153 | hostname (Ağ adı)
154 | hostname --help
155 | pwd (Print Working Directory)
156 | clear
157 | history
158 | whoami
159 | wget : İnternetten bir şey indirmek istersek
160 | wget URL
161 | -------------------------------------------------------------------------
162 |
163 | cd .
164 | cd ..
165 | cd ~
166 | cd ~/Desktop
167 | cd /
168 |
169 | ls -l
170 | ls -al
171 | ls -lar
172 |
173 |
174 | mkdir deneme
175 | mkdir deneme1 deneme2
176 | mkdir deneme3\dosyaadi
177 |
178 | cat > deneme.txt (Bütün dosyayı sil sadece son eklediğimi ekle)
179 | cat >> deneme.txt
180 |
181 | mv deneme.txt deneme1.txt
182 | mv deneme1.txt dizinAdi
183 |
184 | cp deneme1.txt /app/deneme2.txt
185 |
186 | diff deneme1.txt deneme2.txt
187 |
188 | rmdir dizin
189 | rm dosyaAdi
190 | mkdir deneme\ asd
191 |
192 | rm -rf dizinAdi (iç içe dizin varsa silebiliyorsunuz)
193 |
194 | -------------------------------------------------------------------------
195 |
196 | whereis java
197 | which ls
198 | whatis mkdir
199 | info mkdir
200 | man mkdir
201 |
202 |
203 | -------------------------------------------------------------------------
204 |
205 | Editör
206 |
207 | cat >> deneme.txt
208 | tac >> deneme.txt
209 |
210 | vim deneme.txt
211 | vi deneme.txt
212 | nano deneme.txt
213 |
214 | tail deneme.txt => (Sondan 10 satırı göster)
215 | head -n 15 deneme.txt => (Baştan 15 satırı göster)
216 | tail -n 15 deneme.txt => (Sondan 15 satırı göster)
217 |
218 | grep satır deneme.txt (Arama Yapmak)
219 |
220 |
221 | -------------------------------------------------------------------------
222 | Editör
223 | Giresun BJK - g j k
224 |
225 | sudo apt install vim -y
226 |
227 | vim deneme.txt
228 |
229 | i = Insert Mode
230 | esc
231 | :wq! kaydet ve çık
232 | :q! kaydetmeden çık
233 |
234 | esc
235 | g => İlk satıra git
236 | 5j => 5 satır alta in.
237 | 5k => 5 satır yukarı çık
238 |
239 |
240 | -------------------------------------------------------------------------
241 |
242 | Yetkilendirilme
243 | sudo: super admin (SuperUserDo)
244 | su : switch user (başka bir kullanıcıya geçiş yapmak istiyorsak)
245 | su root
246 | su hamit
247 |
248 | ls -al
249 | drwxr-xr-x
250 | d rwx r-x r-x
251 | d = director
252 | r = read
253 | w = write
254 | x = execute
255 |
256 | 700= sadece ben
257 | 755
258 | 777
259 |
260 | r w x
261 | 2^2=4 2^1= 2 2^0=1
262 | d rwx r-x r-x
263 | 421 401 401
264 | 7 5 5
265 | 7 = dosya sahibi
266 | 5 = aynı gruptakiler
267 | 5 = diğer gruptakiler
268 |
269 |
270 | chown => Bir dosyanın yetkisini başka birine vermek istiyorsak.
271 | chown writer deneme.txt service
272 | chmod 755 deneme.txt
273 |
274 |
275 | -------------------------------------------------------------------------
276 |
277 | uname : Linux bilgisini veriyor.
278 | df : disk bilgisini
279 | df -m : megabayt
280 | lshw : donanım bilgisi
281 | lshw -short : donanım bilgisi (kısaltmış)
282 | cat /proc/cpuinfo : CPU
283 | free -m : Ram bilgisi
284 |
285 |
286 |
287 | -------------------------------------------------------------------------
288 | Sıkıştırma:
289 | tar: Tape Archive
290 |
291 | c:Create
292 | f:file
293 | ./*= bütün dosyalar
294 |
295 | tar -cf dosyaAdi.tar ./* (Sıkıştırma yapmadan tek dosya haline getir)
296 | tar -xf dosyaAdi.tar (dosyaları teker teker liste)
297 |
298 | tar -zcf dosyaAdi.tar.gz ./* (Sıkıştırma yap tek dosya haline getir)
299 | tar -zxf dosyaAdi.tar.gz (dosyaları teker teker liste)
300 |
301 | */
302 | -------------------------------------------------------------------------
303 |
304 | top
305 | kill pidNumarasi
306 | kill -9 pidNumarasi
307 |
308 | -------------------------------------------------------------------------
309 |
310 | exit
311 | reboot
312 | shutdown
313 | ifconfig : ip bilgisini almak
314 | lastlog : kullanıcıları sisteme ne zaman giriş yaptıklarını listelesin
315 | sudo lastb : Başarısız girişlerde
316 | ps : o anda root kullanıcı ne ile çalışıyor
317 | pstree techcareer : o anda techcareer kullanıcısı ne yapıyor.
318 |
319 | -------------------------------------------------------------------------
320 | pstree techcareer
321 |
322 | -------------------------------------------------------------------------
323 | Log: Bilgiler
324 | cat /var/log/auth.log
325 |
326 | paste deneme.txt deneme2.txt
327 |
328 | -------------------------------------------------------------------------
329 | Service
330 | systemctl start programAdi
331 | systemctl status programAdi
332 | systemctl restart programAdi
333 | systemctl stop programAdi
334 | systemctl enable programAdi (Server başlatıldığında otomatik olarak bu programda başlasın)
335 | systemctl disable programAdi (Server başlatıldığında otomatik olarak bu programda başlamasın)
336 |
337 | -------------------------------------------------------------------------
338 |
339 | Calendar
340 | sudo apt install ncal
341 | cal
342 | cal 2 2024
343 | cal 2024
344 |
345 |
346 | -------------------------------------------------------------------------
347 | uptime: server ne zamandır ayakta.
348 | lsb_release -a (Linux Dağıtımı hakkında bilgi almak kullanırız.)
349 |
350 | -------------------------------------------------------------------------
351 |
352 | User add
353 | Script Shell
354 | GitHub
355 | Git
356 |
357 | -------------------------------------------------------------------------
358 | User Add
359 | whoami
360 | sudo useradd techcareer => Root olarak yeni kullanıcı ekle
361 | sudo passwd techcareer => Şifre değiştir
362 | sudo userdel techcareer => Kullanıcı Sil
363 | sudo userdel -r techcareer => Recursive olarak sil
364 | compgen -u => Kullanıcı Listelemek
365 | sudo cat /etc/passwd
366 |
367 | su techcareer
368 | password: root
369 | su hamit
370 | password: rootroot
371 |
372 | usermod -L techcareer (Kullanıcıyı Pasif Getirmek)
373 | usermod -U techcareer (Kullanıcıyı Aktif Getirmek)
374 |
375 | ifconfig
376 | ssh techcareer@ipAdresi
377 | root
378 |
379 | sudo ufw status
380 | sudo ufw enable
381 | sudo ufw allow 22
382 | sudo -nlptu
383 |
384 | -------------------------------------------------------------------------
385 | -------------------------------------------------------------------------
386 |
387 | Bash Script
388 |
389 |
390 |
391 |
392 |
393 |
--------------------------------------------------------------------------------
/_4_Docker/Docker_Information.txt:
--------------------------------------------------------------------------------
1 |
2 | =========
3 | Bare-Metal (Windows 10)
4 | Virtual Machine ()
5 | Container
6 |
7 | --------------------------
8 | Docker Nedir ?
9 | LXC : LinuX Containers LXC () Linux Container üzerine kurulu bir container yapısıdır.
10 | Docker 2008 Yılında Soloman Hykes
11 | 2013 Docker Kuruldu
12 | 2014 Docker 1.0
13 | 2015 Docker Swarm (Orchestration)
14 | Go diliyle
15 | Open source
16 | DotCloud => Docker INC
17 |
18 | Docker CE Major 6, Destek sağlanıyor
19 | Docker EE Major 12-18 ay, Destek sağlanıyor
20 |
21 | Docker
22 | ---------------
23 | Hızlı Derleme
24 | Dağıtım
25 | Paket Sistemei
26 | Ölçeklendirme (Orch...)
27 | Test Etme
28 |
29 | Docker Hub : Image Al/Ver
30 |
31 | Docker Platform
32 | Windows, Linux, MAcOS
33 |
34 | ------------------------------
35 | docker version
36 | docker -v
37 | docker --version
38 |
39 | docker info
40 |
41 | docker --help
42 | docker image --help
43 |
44 | docker -v
45 | mvn -v
46 | java --version
47 | node -v
48 |
49 | docker run hello-world
50 | docker container run hello-world
51 |
52 | ------------------------------------------------------------
53 | ------------------------------------------------------------
54 | ------------------------------------------------------------
55 | docker search nginx
56 | docker pull nginx
57 | docker pull nginx:latest
58 | docker pull nginx:1.15
59 |
60 |
61 | docker pull ubuntu
62 | docker pull alpine
63 | docker pull centos
64 | docker pull mysql
65 | docker pull httpd
66 |
67 | ------------------------------------
68 | -- Container --
69 | docker container run --publish 1111:80 nginx (publish: reverse proxy port)
70 | docker container run --publish 2222:80 --detach nginx (detach: arka planda çalış lütfen)
71 | docker container run -p 3333:80 -d nginx
72 | docker container run -p 4444:80 -d --name techcareer nginx (name: container adını yazdırmak)
73 |
74 | ------------------------------------
75 | -- Image --
76 | docker image --help
77 | docker image ls
78 | docker image prune (prune: kullanılmayan bütün image'leri sil)
79 |
80 |
81 |
82 | ------------------------------------
83 | -- List--
84 | docker container ls
85 | docker container ls -a
86 | docker container ps
87 | docker ps
88 |
89 | ------------------------------------
90 | -- Start/Stop --
91 | docker container stop containerID
92 | docker container stop containerNAME
93 | docker container stop 0023a98fc505
94 | docker container start 0023a98fc505
95 |
96 | ------------------------------------
97 | -- Delete --
98 | docker container rm 0023a98fc505
99 | docker container rm -f 266f629d9bc0 (f: stop yapmadan sil)
100 | docker container rm -f 0023a98fc505 e5fd3be3f3d7
101 | docker container prune (prune: Çalışmayan bütün containerleri sil)
102 |
103 | ------------------------------------
104 | -- Monitoring --
105 | docker ps
106 | docker container logs container_ID
107 | docker container logs container_NAME
108 | docker container logs techcareer
109 | docker container logs --details techcareer
110 | docker container logs --tail 5 techcareer (son 5 log'u göster)
111 | docker container logs -f techcareer (f: follow)
112 |
113 | ------------------------------------
114 | -- LOGS TIS --
115 | t: top: çalışan processler
116 | i: inspect detaylı nbilgi
117 | s:stats: performan bilgi(kaynak tüketimi)
118 |
119 | docker container ls
120 | docker container ps
121 | docker container top techcareer
122 | docker container inspect techcareer
123 | docker container stats techcareer
124 |
125 | ------------------------------------
126 | docker search ubuntu
127 | docker pull ubuntu
128 |
129 | alpine => sh
130 | ubuntu => bash
131 | window => powershell
132 |
133 | -- Terminal --
134 | ## Yeni bir container oluştur ve ona bağlan
135 | docker container run -it -p 1111:80 --name techcareer ubuntu bash
136 | winpty docker container run -it -p 1111:80 --name techcareer ubuntu bash
137 | i: interactive
138 | t: terminal
139 |
140 | docker ps
141 | ## Çalışan bir container üzerinden terminale bağlanacağım.
142 | docker container exec -it containerID bash
143 |
144 |
145 | ## Kapatılmış container üzerinden terminale bağlanacağım.
146 | docker container start -ai containerID
147 |
148 | Examples
149 | docker search nginx
150 | docker pull nginx
151 | docker image ls
152 |
153 | --rm: container stop yaptığınızda otomatik silinir.
154 | docker container run -p 7777:80 nginx
155 | docker container run -d -p 7777:80 nginx
156 | docker container run -d -p 7777:80 --name web2 nginx
157 | docker container run -p 7777:80 --name web2 --rm nginx
158 | docker container run -d -p 7777:80 --name web2 --rm nginx
159 |
160 | docker container exec -it web2 bash
161 | cat > usr/share/nginx/html/index.html
162 |
163 |
164 |
165 |
166 |
167 | Document
168 |
169 |
170 | Nasılsınız Lorem, ipsum.
171 |
172 |
173 |
174 |
175 | ------------------------------------
176 | -- Mount --
177 | Verilerimizin container dışında güvenl, bir limanda tutmak istiyorsak, persist data kullanmak zorundayız
178 | 1- Volume (Production) ***(Contaniner dışında özel bir yerde saklansın)
179 | 2- Bind Mound (Test) :Host sistemi üzerinde container içinde saklanıyor.
180 |
181 | Database (Veri tabanı)
182 | Log
183 | xml
184 | json
185 |
186 | volume : -v
187 | bind mound : -v
188 |
189 | ------------------------------------
190 | -- Bind Mound --
191 | docker search nginx
192 | docker pull nginx
193 |
194 | index.html
195 | ----------
196 |
197 |
198 |
199 |
200 |
201 | Document
202 |
203 |
204 | Nasılsınız Ben bir Bind Mound Datasıyım.
205 |
206 |
207 |
208 |
209 | docker container run -d -p 6666:80 -v TaşınmasınıIstediğimDosyaYer:OrijinalDosyaYeri nginx
210 | sudo docker container run -d --rm -p 2222:80 --name bind_nginx -v /home/hamit/Desktop/websitem:/usr/share/nginx/html nginx
211 |
212 | ------------------------------------
213 | -- Volume --
214 | $ docker volume --help
215 | $ docker volume create volumeName
216 | $ docker volume ls
217 | $ docker volume inspect volumeName
218 | $ docker volume prune
219 | $ docker volume rm
220 |
221 | Mountpoint : Volume fiziksel olarak bulunduğu yer demektir.
222 | "Mountpoint": "/var/lib/docker/volumes/volumeName/_data",
223 |
224 |
225 | $ mintty docker container run -it -v volumeName:/webpages ubuntu sh
226 | $ mintty docker container run -it -v volumeName:/webpages alpine sh
227 | $ docker volume ls
228 | $ docker volume inspect volumeName
229 |
230 | $ cd /webpages
231 | $ cat >> index.html
232 | -----------------------
233 | ### index.html ###
234 |
235 |
236 |
237 |
238 |
239 | Document
240 |
241 |
242 | Nasılsınız Ben Bir Volume Datasıyım.
243 |
244 |
245 | $ exit
246 |
247 |
248 | ------------------------------------
249 | -- Volume --
250 | Docker - Volume - Mysql
251 |
252 | docker ps
253 | docker ps -a
254 | docker container rm -f dockerID
255 |
256 | docker search mysql
257 | docker pull mysql/mysql-server:latest
258 | docker ps
259 | docker ps -a
260 | docker image ls
261 | netstat -nlptu
262 |
263 | docker volume ls
264 | docker volume rm volumeName1 volumeName2 volumeName3
265 | docker volume --help
266 | docker create -v /var/lib/mysql --name mysqldatabase mysql/mysql-server:latest
267 | docker volume ls
268 | docker ps -a
269 | Mysql Container ID:8f30d2f90670
270 | Mysql Container NAME: mysqldatabase
271 |
272 | docker ps -a
273 | docker container run -p 3306:3306 -d -e MYSQL_ROOT_PASSWORD=root --volumes-from mysqldatabase --name=mysqldb mysql/mysql-server:latest
274 | winpty docker container exec -it mysqldb bash
275 | mysql -uroot -p
276 | root
277 | SHOW DATABASES;
278 |
279 | CREATE SCHEMA `spa` DEFAULT CHARACTER SET utf8 ;
280 | use volume;
281 | CREATE TABLE `spa`.`blog` (
282 | `id` INT NOT NULL AUTO_INCREMENT,
283 | `title` VARCHAR(250) NULL,
284 | `content` VARCHAR(250) NULL,
285 | `created_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
286 | PRIMARY KEY (`id`));
287 |
288 | INSERT INTO `spa`.`blog` (`title`, `content`) VALUES ('title-1', 'content-1');
289 | INSERT INTO `spa`.`blog` (`title`, `content`) VALUES ('title-2', 'content-2');
290 | SELECT * FROM spa.blog;
291 | SHOW DATABASES;
292 |
293 | exit (Mysql)
294 | exit (Bash terminal)
295 |
296 | docker container rm -f mysqldb
297 | docker container run -p 3306:3306 -d -e MYSQL_ROOT_PASSWORD=root --volumes-from mysqldatabase --name=mysqldatabasenew mysql/mysql-server:latest
298 | winpty docker container exec -it mysqldatabasenew bash
299 | mysql -uroot -p
300 | root
301 | SHOW DATABASES;
302 |
303 | ------------------------------------
304 | -- Image Oluşturmak --
305 | docker login
306 |
307 | docker image --help
308 | docker image ls
309 | docker image tag --help
310 |
311 | DockerHub Repository Name: javahamitmizrak/spring_react_blog
312 | imageName: Oluşturduğumuz DockerFile veya docker-compose.yml'da veya daha önceden pull yaptığımız image adları.
313 |
314 | docker image tag imageName javahamitmizrak/spring_react_blog
315 | docker image tag my_spring_react:latest javahamitmizrak/spring_react_blog
316 |
317 | docker push javahamitmizrak/spring_react_blog
318 | docker image ls
319 | docker image rm imageName
320 | docker pull javahamitmizrak/spring_react_blog
321 | docker logout
322 |
323 | ------------------------------------
324 | -- Docker Swarm (orchestraction) --
325 | K8S - Docker Swarm (Birden fazla container yönetiminde)
326 |
327 | Docker Swarm (Docker Engine içerisinde )
328 | docker info
329 | Eğer Swarm inacative görünmüyorsa =>
330 | docker swarm leave --force
331 | docker swarm init
332 |
333 | Manager - Worker
334 | docker swarm --help
335 |
336 | docker swarm init (active et)
337 | docker swarm leave (Swarm Kapat)
338 | docker swarm update (Swarm Güncellemek)
339 |
340 | docker swarm node ls
341 |
342 | ------------------------------------
343 | -- Service --
344 | docker service --help (service: çalışan container kapandığında otomatik olarak açsın ve o container sürekli çalışsın)
345 | docker service ls
346 | docker service ps ID
347 | docker service rm ID
348 | docker container rm -f containerID
349 |
350 | Manager Node Raft Consensus Algoritması
351 | N-1/2
352 |
353 |
354 |
355 | ------------------------------------
356 | -- Swarm --
357 | Orchestration
358 | https://labs.play-with-docker.com/
359 |
360 | docker info
361 | docker swarm init (active et)
362 | docker swarm leave (Swarm Kapat)
363 | docker swarm update (Swarm Güncellemek)
364 | docker swarm node ls
365 |
366 | Ctrl+ Insert tuşu (Copy)
367 | Shift+ Insert tuşu (Pase)
368 |
369 | 1.ADIM
370 | -------------
371 | 5 tane instance oluştur.
372 | ifconfig ile ip adresini gördüm
373 |
374 | Herhangi bir node => Aktif Manager Seç => ( docker swarm init --advertise-addr 192.168.0.13 )
375 | Aktif Manager node iken => Pasif Manager Seç => ( docker swarm join-token manager ) docker swarm join --token SWMTKN-1-4pihi7pb25k8szb0q9wggj96iz48wfoxxbkw03h21gg5dho56r-exe7al8bhf4ep977xbqjtqd13 192.168.0.13:2377
376 | Aktif Manager node iken => Workerlar Seç => ( docker swarm join-token worker ) docker swarm join --token SWMTKN-1-4pihi7pb25k8szb0q9wggj96iz48wfoxxbkw03h21gg5dho56r-doff0ak6q3zgqsan2apjhp78k 192.168.0.13:2377
377 |
378 |
379 | 2.ADIM
380 | -------------
381 | Pasif Manager için ID: 192.168.12 IP git => docker swarm join --token SWMTKN-1-4pihi7pb25k8szb0q9wggj96iz48wfoxxbkw03h21gg5dho56r-exe7al8bhf4ep977xbqjtqd13 192.168.0.13:2377
382 | Pasif Manager için ID: 192.168.11 IP git => docker swarm join --token SWMTKN-1-4pihi7pb25k8szb0q9wggj96iz48wfoxxbkw03h21gg5dho56r-exe7al8bhf4ep977xbqjtqd13 192.168.0.13:2377
383 |
384 | Worker için ID: 192.168.10 IP git => docker swarm join --token SWMTKN-1-4pihi7pb25k8szb0q9wggj96iz48wfoxxbkw03h21gg5dho56r-doff0ak6q3zgqsan2apjhp78k 192.168.0.13:2377
385 | Worker için ID: 192.168.9 IP git => docker swarm join --token SWMTKN-1-4pihi7pb25k8szb0q9wggj96iz48wfoxxbkw03h21gg5dho56r-doff0ak6q3zgqsan2apjhp78k 192.168.0.13:2377
386 |
387 |
388 | 3.ADIM
389 | -------------
390 | docker node ls (Aktif veya Pasif managerde bu komutu sadece çalıştırabilirsin)
391 | docker service create --name web_server -p 7777:80 --replicas=9 nginx (aktif veya pasif managerde seçmelisiniz)
392 |
393 | docker service ls
394 | docker service ps web_server
395 |
396 |
397 | docker ps
398 | docker container rm -f containerID
399 | docker node ls
400 | docker service ps web_server
401 |
402 | ------------------------------------
403 | -- Network --
404 | Container normalde portla ile haberleşiyor.
405 | Bilgisayarda;
406 |
407 | Port
408 | 2^16= 65536 port
409 | 0 <= PORT <= 1023 (Well-Know Port)
410 | 0 =>
411 | 20 => FTP (File Transfer Protocol)
412 | 22 => SSH
413 | 23 => Telnet
414 | 80 => Http Reverse Proxy (nginx)
415 | 80 => Http Reverse Proxy (docker)
416 | 443 => Https SSL
417 |
418 |
419 | 1024 <= PORT <= 49151 (Registed Port)
420 | 3306 => Mysql
421 | 5432 => Postgresql
422 | 6379 => Redis
423 | 27017 => Mongo
424 | 3000 => Node js + React JS
425 |
426 |
427 | 49152<= PORT <= 65535 ( Dynamics Port)
428 | sudo ufw status (inactive)
429 | sudo ufw enable
430 | sudo ufw allow 22
431 | sudo -nlptu
432 | sudo netstat -nlptu
433 |
434 | Ancak portlara her zaman güvenemeyiz. örneğin: XYZ kişisi kullandığımız bir portu kill yaptı.
435 |
436 | Network port ile haberleşmeye yerine DNS üzerindern haberleşmesini sağlıyor.
437 |
438 | Network Driver
439 | Bridge : Default Driverdir.
440 | Host : Container izolasyonu olmadığı durumlarda kullanılan network.
441 | None : Container ağ bağlantısını olmasını istemiyoruz.
442 | macvlan: mac adres üzerinden haberleşme
443 |
444 |
445 | NORMAL PORT HABERLEŞME
446 | docker container run --name port_nginx -d -p 9999:80 nginx
447 |
448 | docker network --help
449 | docker network ls
450 | docker network rm NETWORKID
451 | docker network inspect bridge
452 |
453 | docker inspect hamitmizrak_network
454 | docker network create hamitmizrak_network
455 | docker inspect hamitmizrak_network
456 | docker container run --name dns_nginx -d --network hamitmizrak_network nginx
457 | docker container exec -it dns_nginx bash
458 | apt-get update
459 | apt-get install curl
460 | curl amazon.com
461 |
462 |
463 |
464 | ------------------------------------
465 | ------------------------------------
466 | ------------------------------------
467 | SonarQube
468 | Grafana / Prometheus
469 |
470 |
471 |
472 |
473 |
474 |
475 |
476 |
477 |
478 |
479 |
480 |
481 |
482 |
483 |
--------------------------------------------------------------------------------
/_5_SonarQube/conf/sonar.properties:
--------------------------------------------------------------------------------
1 | #--------------------------------------------------------------------------------------------------
2 | # IMPORTANT:
3 | # This file will *not* be reloaded upon hitting the "Restart" button in the UI, or using the
4 | # api/system/restart endpoint.
5 | # In order for any change made to this file to be taken into account, you must perform a full
6 | # restart of the main SonarQube service.
7 | #--------------------------------------------------------------------------------------------------
8 |
9 | # Property values can:
10 | # - be overridden by environment variables. The name of the corresponding environment variable is the
11 | # upper-cased name of the property where all the dot ('.') and dash ('-') characters are replaced by
12 | # underscores ('_'). For example, to override 'sonar.web.systemPasscode' use 'SONAR_WEB_SYSTEMPASSCODE'.
13 | # - be encrypted. See https://docs.sonarsource.com/sonarqube/latest/instance-administration/security/#settings-encryption
14 |
15 | #--------------------------------------------------------------------------------------------------
16 | # DATABASE
17 | #
18 | # IMPORTANT:
19 | # - The embedded H2 database is used by default. It is recommended for tests but not for
20 | # production use. Supported databases are Oracle, PostgreSQL and Microsoft SQLServer.
21 | # - Changes to database connection URL (sonar.jdbc.url) can affect SonarSource licensed products.
22 |
23 | # User credentials.
24 | # Permissions to create tables, indices and triggers must be granted to JDBC user.
25 | # The schema must be created first.
26 | #sonar.jdbc.username=
27 | #sonar.jdbc.password=
28 |
29 | #----- Embedded Database (default)
30 | # H2 embedded database server listening port, defaults to 9092
31 | #sonar.embeddedDatabase.port=9092
32 |
33 |
34 | #----- Oracle 19c/21c
35 | # The Oracle JDBC driver must be copied into the directory extensions/jdbc-driver/oracle/.
36 | # Only the thin client is supported, and we recommend using the latest Oracle JDBC driver. See
37 | # https://jira.sonarsource.com/browse/SONAR-9758 for more details.
38 | # If you need to set the schema, please refer to http://jira.sonarsource.com/browse/SONAR-5000
39 | #sonar.jdbc.url=jdbc:oracle:thin:@localhost:1521/XE
40 |
41 |
42 | #----- PostgreSQL 11 or greater
43 | # By default the schema named "public" is used. It can be overridden with the parameter "currentSchema".
44 | #sonar.jdbc.url=jdbc:postgresql://localhost/sonarqube?currentSchema=my_schema
45 |
46 |
47 | #----- Microsoft SQLServer 2014/2016/2017/2019/2022 and SQL Azure
48 | # A database named sonar must exist and its collation must be case-sensitive (CS) and accent-sensitive (AS)
49 | # Use the following connection string if you want to use integrated security with Microsoft Sql Server
50 | # Do not set sonar.jdbc.username or sonar.jdbc.password property if you are using Integrated Security
51 | # For Integrated Security to work, you have to download the Microsoft SQL JDBC Auth 12.4.2 package from
52 | # https://github.com/microsoft/mssql-jdbc/releases/download/v12.4.2/mssql-jdbc_auth.zip
53 | # and 'mssql-jdbc_auth-12.4.2.x64.dll' to your path.
54 | #sonar.jdbc.url=jdbc:sqlserver://localhost;databaseName=sonar;integratedSecurity=true
55 |
56 | # Use the following connection string if you want to use SQL Auth while connecting to MS Sql Server.
57 | # Set the sonar.jdbc.username and sonar.jdbc.password appropriately.
58 | #sonar.jdbc.url=jdbc:sqlserver://localhost;databaseName=sonar
59 |
60 |
61 | #----- Connection pool settings
62 | # The maximum number of active connections that can be allocated
63 | # at the same time, or negative for no limit.
64 | # The recommended value is 1.2 * max sizes of HTTP pools. For example if HTTP ports are
65 | # enabled with default sizes (50, see property sonar.web.http.maxThreads)
66 | # then sonar.jdbc.maxActive should be 1.2 * 50 = 60.
67 | #sonar.jdbc.maxActive=60
68 |
69 | # The minimum number of connections that can remain idle in the pool,
70 | # without extra ones being created, or zero to create none.
71 | #sonar.jdbc.minIdle=10
72 |
73 | # The maximum number of milliseconds that the pool will wait (when there
74 | # are no available connections) for a connection to be returned before
75 | # throwing an exception, or <= 0 to wait indefinitely.
76 | #sonar.jdbc.maxWait=8000
77 |
78 |
79 | #--------------------------------------------------------------------------------------------------
80 | # WEB SERVER
81 | # Web server is executed in a dedicated Java process. By default heap size is 512MB.
82 | # Use the following property to customize JVM options.
83 | # Recommendations:
84 | #
85 | # The HotSpot Server VM is recommended. The property -server should be added if server mode
86 | # is not enabled by default on your environment:
87 | # http://docs.oracle.com/javase/8/docs/technotes/guides/vm/server-class.html
88 | #
89 | # Startup can be long if entropy source is short of entropy. Adding
90 | # -Djava.security.egd=file:/dev/./urandom is an option to resolve the problem.
91 | # See https://wiki.apache.org/tomcat/HowTo/FasterStartUp#Entropy_Source
92 | #
93 | #sonar.web.javaOpts=-Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError
94 |
95 | # Same as previous property, but allows to not repeat all other settings like -Xmx
96 | #sonar.web.javaAdditionalOpts=
97 |
98 | # Binding IP address. For servers with more than one IP address, this property specifies which
99 | # address will be used for listening on the specified ports.
100 | # By default, ports will be used on all IP addresses associated with the server.
101 | #sonar.web.host=0.0.0.0
102 |
103 | # Web context. When set, it must start with forward slash (for example /sonarqube).
104 | # Changing this value and restarting the server can have unexpected consequences for logged in users,
105 | # as they may end up with multiple conflicting browser cookies. If your users experience odd
106 | # behaviors after you changed this value and restarted the server, ask them to clear their browser's
107 | # cookies and log in again.
108 | # The default value is root context (empty value).
109 | #sonar.web.context=
110 | # TCP port for incoming HTTP connections. Default value is 9000.
111 | #sonar.web.port=9000
112 |
113 |
114 | # The maximum number of connections that the server will accept and process at any given time.
115 | # When this number has been reached, the server will not accept any more connections until
116 | # the number of connections falls below this value. The operating system may still accept connections
117 | # based on the sonar.web.connections.acceptCount property. The default value is 50.
118 | #sonar.web.http.maxThreads=50
119 |
120 | # The minimum number of threads always kept running. The default value is 5.
121 | #sonar.web.http.minThreads=5
122 |
123 | # The maximum queue length for incoming connection requests when all possible request processing
124 | # threads are in use. Any requests received when the queue is full will be refused.
125 | # The default value is 25.
126 | #sonar.web.http.acceptCount=25
127 |
128 | # The number of milliseconds this Connector will wait for another HTTP request before closing the
129 | # connection. The default value is to use the value that has been set for the connectionTimeout
130 | # attribute. Use a value of -1 to indicate no (i.e. infinite) timeout.
131 | # The default value is 60000 (ms).
132 | #sonar.web.http.keepAliveTimeout=60000
133 |
134 | # By default users are logged out and sessions closed when server is restarted.
135 | # If you prefer keeping user sessions open, a secret should be defined. Value is
136 | # HS256 key encoded with base64. It must be unique for each installation of SonarQube.
137 | # Example of command-line:
138 | # echo -n "type_what_you_want" | openssl dgst -sha256 -hmac "key" -binary | base64
139 | #sonar.auth.jwtBase64Hs256Secret=
140 |
141 | # The inactivity timeout duration of user sessions, in minutes. After the configured
142 | # period of time, the user is logged out.
143 | # The default value is set to 3 days (4320 minutes).
144 | # It must be set between 6 minutes and 3 months (129600 minutes).
145 | # Value must be strictly positive.
146 | #sonar.web.sessionTimeoutInMinutes=4320
147 |
148 | # A passcode can be defined to access some web services from monitoring
149 | # tools without having to use the credentials of a system administrator.
150 | # Check the Web API documentation to know which web services are supporting this authentication mode.
151 | # The passcode should be provided in HTTP requests with the header "X-Sonar-Passcode".
152 | # By default feature is disabled.
153 | #sonar.web.systemPasscode=
154 |
155 |
156 | #--------------------------------------------------------------------------------------------------
157 | # SSO AUTHENTICATION
158 |
159 | # Enable authentication using HTTP headers
160 | #sonar.web.sso.enable=false
161 |
162 | # Name of the header to get the user login.
163 | # Only alphanumeric, '.' and '@' characters are allowed
164 | #sonar.web.sso.loginHeader=X-Forwarded-Login
165 |
166 | # Name of the header to get the user name
167 | #sonar.web.sso.nameHeader=X-Forwarded-Name
168 |
169 | # Name of the header to get the user email (optional)
170 | #sonar.web.sso.emailHeader=X-Forwarded-Email
171 |
172 | # Name of the header to get the list of user groups, separated by comma (optional).
173 | # If the sonar.sso.groupsHeader is set, the user will belong to those groups if groups exist in SonarQube.
174 | # If none of the provided groups exists in SonarQube, the user will only belong to the default group.
175 | # Note that the default group will always be set.
176 | #sonar.web.sso.groupsHeader=X-Forwarded-Groups
177 |
178 | # Interval used to know when to refresh name, email and groups.
179 | # During this interval, if for instance the name of the user is changed in the header, it will only be updated after X minutes.
180 | #sonar.web.sso.refreshIntervalInMinutes=5
181 |
182 | #--------------------------------------------------------------------------------------------------
183 | # LDAP CONFIGURATION
184 |
185 | # Enable the LDAP feature
186 | # sonar.security.realm=LDAP
187 |
188 | # Set to true when connecting to a LDAP server using a case-insensitive setup.
189 | # sonar.authenticator.downcase=true
190 |
191 | # URL of the LDAP server. Note that if you are using ldaps, then you should install the server certificate into the Java truststore.
192 | # ldap.url=ldap://localhost:10389
193 |
194 | # Bind DN is the username of an LDAP user to connect (or bind) with. Leave this blank for anonymous access to the LDAP directory (optional)
195 | # ldap.bindDn=cn=sonar,ou=users,o=mycompany
196 |
197 | # Bind Password is the password of the user to connect with. Leave this blank for anonymous access to the LDAP directory (optional)
198 | # ldap.bindPassword=secret
199 |
200 | # Possible values: simple | CRAM-MD5 | DIGEST-MD5 | GSSAPI See http://java.sun.com/products/jndi/tutorial/ldap/security/auth.html (default: simple)
201 | # ldap.authentication=simple
202 |
203 | # See :
204 | # * http://java.sun.com/products/jndi/tutorial/ldap/security/digest.html
205 | # * http://java.sun.com/products/jndi/tutorial/ldap/security/crammd5.html
206 | # (optional)
207 | # ldap.realm=example.org
208 |
209 | # Context factory class (optional)
210 | # ldap.contextFactoryClass=com.sun.jndi.ldap.LdapCtxFactory
211 |
212 | # Enable usage of StartTLS (default : false)
213 | # ldap.StartTLS=true
214 |
215 | # Follow or not referrals. See http://docs.oracle.com/javase/jndi/tutorial/ldap/referral/jndi.html (default: true)
216 | # ldap.followReferrals=false
217 |
218 | # USER MAPPING
219 |
220 | # Distinguished Name (DN) of the root node in LDAP from which to search for users (mandatory)
221 | # ldap.user.baseDn=cn=users,dc=example,dc=org
222 |
223 | # LDAP user request. (default: (&(objectClass=inetOrgPerson)(uid={login})) )
224 | # ldap.user.request=(&(objectClass=user)(sAMAccountName={login}))
225 |
226 | # Attribute in LDAP defining the user’s real name. (default: cn)
227 | # ldap.user.realNameAttribute=name
228 |
229 | # Attribute in LDAP defining the user’s email. (default: mail)
230 | # ldap.user.emailAttribute=email
231 |
232 | # GROUP MAPPING
233 |
234 | # Distinguished Name (DN) of the root node in LDAP from which to search for groups. (optional, default: empty)
235 | # ldap.group.baseDn=cn=groups,dc=example,dc=org
236 |
237 | # LDAP group request (default: (&(objectClass=groupOfUniqueNames)(uniqueMember={dn})) )
238 | # ldap.group.request=(&(objectClass=group)(member={dn}))
239 |
240 | # Property used to specifiy the attribute to be used for returning the list of user groups in the compatibility mode. (default: cn)
241 | # ldap.group.idAttribute=sAMAccountName
242 |
243 | #--------------------------------------------------------------------------------------------------
244 | # COMPUTE ENGINE
245 | # The Compute Engine is responsible for processing background tasks.
246 | # Compute Engine is executed in a dedicated Java process. Default heap size is 512MB.
247 | # Use the following property to customize JVM options.
248 | # Recommendations:
249 | #
250 | # The HotSpot Server VM is recommended. The property -server should be added if server mode
251 | # is not enabled by default on your environment:
252 | # http://docs.oracle.com/javase/8/docs/technotes/guides/vm/server-class.html
253 | #
254 | #sonar.ce.javaOpts=-Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError
255 |
256 | # Same as previous property, but allows to not repeat all other settings like -Xmx
257 | #sonar.ce.javaAdditionalOpts=
258 |
259 |
260 | #--------------------------------------------------------------------------------------------------
261 | # ELASTICSEARCH
262 | # Elasticsearch is used to facilitate fast and accurate information retrieval.
263 | # It is executed in a dedicated Java process. Default maximum heap size is 512MB.
264 | # It is recommended to also set MaxDirectMemorySize (-XX:MaxDirectMemorySize) and set it to half the maximum heap size.
265 | #
266 | # --------------------------------------------------
267 | # Word of caution for Linux users on 64bits systems
268 | # --------------------------------------------------
269 | # Please ensure Virtual Memory on your system is correctly configured for Elasticsearch to run properly
270 | # (see https://www.elastic.co/guide/en/elasticsearch/reference/5.5/vm-max-map-count.html for details).
271 | #
272 | # When SonarQube runs standalone, a warning such as the following may appear in logs/es.log:
273 | # "max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]"
274 | # When SonarQube runs as a cluster, however, Elasticsearch will refuse to start.
275 | #
276 |
277 | # JVM options of Elasticsearch process
278 | #sonar.search.javaOpts=-Xmx512m -Xms512m -XX:MaxDirectMemorySize=256m -XX:+HeapDumpOnOutOfMemoryError
279 |
280 | # Same as previous property, but allows to not repeat all other settings like -Xmx
281 | #sonar.search.javaAdditionalOpts=
282 |
283 | # Elasticsearch port for incoming HTTP connections. Default is 9001. Use 0 to get a free port.
284 | # As a security precaution, should be blocked by a firewall and not exposed to the Internet.
285 | #sonar.search.port=9001
286 |
287 | # Elasticsearch TCP transport port that is bound to loopback address. When nothing is set, a random port will be chosen.
288 | # As a security precaution, your OS configuration should not expose this port for external access.
289 | #sonar.es.port=
290 |
291 | # Elasticsearch host. The search server will bind this address and the search client will connect to it.
292 | # Default is loopback address.
293 | # As a security precaution, should NOT be set to a publicly available address.
294 | #sonar.search.host=
295 |
296 |
297 | #--------------------------------------------------------------------------------------------------
298 | # UPDATE CENTER
299 |
300 | # Update Center requires an internet connection to request https://update.sonarsource.org
301 | # It is enabled by default.
302 | #sonar.updatecenter.activate=true
303 |
304 | # HTTP proxy (default none)
305 | #http.proxyHost=
306 | #http.proxyPort=
307 | # HTTPS proxy (defaults are values of http.proxyHost and http.proxyPort)
308 | #https.proxyHost=
309 | #https.proxyPort=
310 |
311 | # NT domain name if NTLM proxy is used
312 | #http.auth.ntlm.domain=
313 |
314 | # SOCKS proxy (default none)
315 | #socksProxyHost=
316 | #socksProxyPort=
317 |
318 | # Proxy authentication (used for HTTP, HTTPS and SOCKS proxies)
319 | #http.proxyUser=
320 | #http.proxyPassword=
321 |
322 | # Proxy exceptions: list of hosts that can be accessed without going through the proxy
323 | # separated by the '|' character, wildcard character '*' can be used for pattern matching
324 | # used for HTTP and HTTPS (default none)
325 | # (note: localhost and its literal notations (127.0.0.1, ...) are always excluded)
326 | #http.nonProxyHosts=
327 |
328 |
329 | #--------------------------------------------------------------------------------------------------
330 | # LOGGING
331 |
332 | # SonarQube produces logs in files located in the same directory (see property sonar.path.logs below),
333 | # one per process:
334 | # Main process (aka. App) logs in sonar.log
335 | # Web Server (aka. Web) logs in web.log
336 | # Compute Engine (aka. CE) logs in ce.log
337 | # Elasticsearch (aka. ES) logs in es.log
338 | # and two other log files:
339 | # Access logs
340 | # Deprecation logs
341 |
342 | # Regarding logs for processes:
343 | # Depending on the startup, all 4 files follow the same rolling policy (see sonar.log.rollingPolicy and sonar.log.maxFiles) but it applies
344 | # individually (eg. if sonar.log.maxFiles=4, there can be at most 4 of each files, ie. 16 files in total).
345 | #
346 | # All 4 files have logs in the same format:
347 | # 1 2 3 4 5 6
348 | # |-----------------| |---| |-|--------------------||------------------------------| |------------------------------------------------------------------------------------------------------------------------------|
349 | # 2016.11.16 16:47:00 INFO ce[AVht0dNXFcyiYejytc3m][o.s.s.c.t.CeWorkerCallableImpl] Executed task | project=org.sonarqube:example-java-maven | type=REPORT | id=AVht0dNXFcyiYejytc3m | submitter=admin | time=1699ms
350 | #
351 | # 1: timestamp. Format is YYYY.MM.DD HH:MM:SS
352 | # YYYY: year on 4 digits
353 | # MM: month on 2 digits
354 | # DD: day on 2 digits
355 | # HH: hour of day on 2 digits in 24 hours format
356 | # MM: minutes on 2 digits
357 | # SS: seconds on 2 digits
358 | # 2: log level.
359 | # Possible values (in order of descending criticality): ERROR, WARN, INFO, DEBUG and TRACE
360 | # 3: process identifier. Possible values: app (main), web (Web Server), ce (Compute Engine) and es (Elasticsearch)
361 | # 4: SQ thread identifier. Can be empty.
362 | # In the Web Server, if present, it will be the HTTP request ID.
363 | # In the Compute Engine, if present, it will be the task ID.
364 | # 5: logger name. Usually a class canonical name.
365 | # Package names are truncated to keep the whole field to 20 characters max
366 | # 6: log payload. Content of this field does not follow any specific format, can vary in length and include line returns.
367 | # Some logs, however, will follow the convention to provide data in payload in the format " | key=value"
368 | # Especially, log of profiled pieces of code will end with " | time=XXXXms".
369 |
370 | # Global level of logs (applies to all 4 processes).
371 | # Supported values are INFO (default), DEBUG and TRACE
372 | #sonar.log.level=INFO
373 |
374 | # Level of logs of each process can be controlled individually with their respective properties.
375 | # When specified, they overwrite the level defined at global level.
376 | # Supported values are INFO, DEBUG and TRACE
377 | #sonar.log.level.app=INFO
378 | #sonar.log.level.web=INFO
379 | #sonar.log.level.ce=INFO
380 | #sonar.log.level.es=INFO
381 |
382 | # Path to log files. Can be absolute or relative to installation directory.
383 | # Default is /logs
384 | #sonar.path.logs=logs
385 |
386 | # Rolling policy of log files
387 | # - based on time if value starts with "time:", for example by day ("time:yyyy-MM-dd")
388 | # or by month ("time:yyyy-MM")
389 | # - based on size if value starts with "size:", for example "size:10MB"
390 | # - disabled if value is "none". That needs logs to be managed by an external system like logrotate.
391 | #sonar.log.rollingPolicy=time:yyyy-MM-dd
392 |
393 | # Maximum number of files to keep if a rolling policy is enabled.
394 | # - maximum value is 20 on size rolling policy
395 | # - unlimited on time rolling policy. Set to zero to disable old file purging.
396 | #sonar.log.maxFiles=7
397 |
398 | # Regarding the Access logs:
399 | # Access log is the list of all the HTTP requests received by server. If enabled, it is stored
400 | # in the file {sonar.path.logs}/access.log. This file follows the same rolling policy as other log file
401 | # (see sonar.log.rollingPolicy and sonar.log.maxFiles).
402 | #sonar.web.accessLogs.enable=true
403 |
404 | # Format of access log. It is ignored if sonar.web.accessLogs.enable=false. Possible values are:
405 | # - "common" is the Common Log Format, shortcut to: %h %l %u %user %date "%r" %s %b
406 | # - "combined" is another format widely recognized, shortcut to: %h %l %u [%t] "%r" %s %b "%i{Referer}" "%i{User-Agent}"
407 | # - else a custom pattern. See http://logback.qos.ch/manual/layouts.html#AccessPatternLayout.
408 | # The login of authenticated user is not implemented with "%u" but with "%reqAttribute{LOGIN}" (since version 6.1).
409 | # The value displayed for anonymous users is "-".
410 | # The SonarQube's HTTP request ID can be added to the pattern with "%reqAttribute{ID}" (since version 6.2).
411 | # If SonarQube is behind a reverse proxy, then the following value allows to display the correct remote IP address:
412 | #sonar.web.accessLogs.pattern=%i{X-Forwarded-For} %l %u [%t] "%r" %s %b "%i{Referer}" "%i{User-Agent}" "%reqAttribute{ID}"
413 | # Default value (which was "combined" before version 6.2) is equivalent to "combined + SQ HTTP request ID":
414 | #sonar.web.accessLogs.pattern=%h %l %u [%t] "%r" %s %b "%i{Referer}" "%i{User-Agent}" "%reqAttribute{ID}"
415 |
416 | # Regarding the Deprecation logs:
417 | # Deprecation log is the list of all calls to deprecated Web API.
418 | # It is stored in the file {sonar.path.logs}/deprecation.log. This file follows the same rolling policy as other log file
419 | # (see sonar.log.rollingPolicy and sonar.log.maxFiles).
420 |
421 | # Format of deprecation log.
422 | # See https://docs.sonarsource.com/sonarqube/latest/instance-administration/server-logs-and-system-info/
423 | # The login of authenticated user is disabled by default.
424 | # sonar.deprecationLogs.loginEnabled=false
425 |
426 |
427 | #--------------------------------------------------------------------------------------------------
428 | # OTHERS
429 |
430 | # Delay in seconds between processing of notification queue. Default is 60 seconds.
431 | #sonar.notifications.delay=60
432 |
433 | # Paths to persistent data files (embedded database and search index) and temporary files.
434 | # Can be absolute or relative to installation directory.
435 | # Defaults are respectively /data and /temp
436 | #sonar.path.data=data
437 | #sonar.path.temp=temp
438 |
439 | # Telemetry - Share anonymous SonarQube statistics
440 | # By sharing anonymous SonarQube statistics, you help us understand how SonarQube is used so we can improve the product to work even better for you.
441 | # We don't collect source code or IP addresses. And we don't share the data with anyone else.
442 | #sonar.telemetry.enable=true
443 |
--------------------------------------------------------------------------------