공식 설치 문서 : 

https://docs.nginx.com/nginx/admin-guide/installing-nginx/installing-nginx-open-source/#installing-prebuilt-ubuntu-packages

 

Installing NGINX Open Source | NGINX Documentation

MyF5 Your key to everything F5, including support, registration keys, and subscriptions

docs.nginx.com

 

공식 우분투 패키지 레포를 통하지 않고, nginx 에서 제공하는 패키지 레포를 통해 설치하도록 한다.

 

# 다음과 같이 키 정보를 등록

sudo apt install curl gnupg2 ca-certificates lsb-release ubuntu-keyring

curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor \
| sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null

gpg --dry-run --quiet --no-keyring --import --import-options import-show /usr/share/keyrings/nginx-archive-keyring.gpg

 

# 패키지 정보 등록

echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" \
    | sudo tee /etc/apt/sources.list.d/nginx.list

echo -e "Package: *\nPin: origin nginx.org\nPin: release o=nginx\nPin-Priority: 900\n" \
    | sudo tee /etc/apt/preferences.d/99nginx

 

# 설치 진행

sudo apt update
sudo apt install nginx

 

----

# 부팅 시 Nginx 자동 시작 해제
sudo systemctl disable nginx
# 자동 재시작으로 다시 활성화 경우
sudo systemctl enable nginx
# 서비스 상태확인
sudo systemctl status nginx

## 제어 명령


# Nginx 시작 및 systemctl에 등록
sudo systemctl start nginx
#Nginx 중지
sudo systemctl stop nginx
# Nginx 재시작
sudo systemctl restart nginx
# Nginx 다시 로드
sudo systemctl reload nginx

 

 

설치 후 브라우저로 접근하여 잘 뜨는지 확인합니다.

 

 

 

---

사이트 추가 설정

touch /etc/nginx/sites-available/gitea.ozstack.net.conf

 

안에 내용 예시)

server {
  listen 80;
  server_name gitea.ozstack.net;
  return 301 https://$server_name$request_uri;
}

server {
  listen 443 ssl;
  client_max_body_size 20G;
  server_name ozstack.net;
  ssl_certificate /etc/letsencrypt/live/ozstack.net/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/ozstack.net/privkey.pem;
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
  ssl_ciphers HIGH:!aNULL:!MD5;



  location / {
    proxy_redirect off;
    proxy_set_header   X-Real-IP  $remote_addr;
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    proxy_set_header   X-Forwarded-Proto  $scheme;
    proxy_set_header   Host  $http_host;
    proxy_set_header   X-NginX-Proxy  true;
    proxy_http_version 1.1;
    proxy_cookie_path / "/; SameSite=None; HTTPOnly; Secure";
    proxy_pass         http://192.168.0.114:3000;
  }
}



# 심볼링 링크 추가

 sudo ln -s /etc/nginx/sites-available/gitea.ozstack.net.conf /etc/nginx/sites-enabled/gitea.ozstack.net.conf

 

 

# nginx.conf 에    include /etc/nginx/conf.d/*.conf; 아래 줄에 다음을 추가

include /etc/nginx/sites-enabled/*;

php8.2와 Mariadb 10.6.17-MariaDB-log 환경에서 json 데이터 저장시 한글이 깨지는 현상을 발견...

인코딩 문제인가 싶어서 한참동안 찾았는데...

hedisql 툴의 버그였다... 어이없....

 

아래는 발견한 현상이다. 편집을 누르면 한글이 깨진다..

해결방법은 접속 드라이버를 아래처럼 변경하면 해결이 가능하다.

 

 

 

 

DBeaver에서는 정상적으로 출력된다...

 

 

ollama windows 설치 시 실행 오류 시

 

아래 환경변수를 설정한다.

환경변수 키 OLLAMA_HOST
환경변수 값 0.0.0.0:11434

 

 

https://github.com/ollama/ollama/issues/2627

 

Error: listen tcp 127.0.0.1:11434: bind: · Issue #2627 · ollama/ollama

Windows 10, I cannot start Ollama, $ ollama serve Error: listen tcp 127.0.0.1:11434: bind: An attempt was made to access a socket in a way forbidden by its access permissions. from app.log time=202...

github.com

 

'설정' 카테고리의 다른 글

우분투 nginx 설치  (0) 2025.03.26
heidisql 한글 버그  (0) 2025.01.05
bash 셸로 uuid 생성  (0) 2024.11.17
asp.net core 에서 unix domain socket으로 서비스 바인딩하기  (0) 2024.06.23
우분투 리눅스 논리 볼륨 확장하기  (0) 2023.08.12
# 32 자리 UUID
$(uuidgen | tr -d "-" | head -c 32)

# 16 자리 UUID
$(uuidgen | tr -d "-" | head -c 16)

# Unix Nano Timestamp
$(date +%s%N)

 

uuid가 bash 셸상에서 필요할 때.

위 명령어로 생성이 가능하다~!

 

 

git으로  master 브랜치 소스 압축하기

git archive --format=tar.gz --output=source.tar.gz master

 

원격지에서 로컬로 파일 가져오기

$ scp user@192.168.000.000:/home/test/testfile1.txt /test

 

k8s에서 sidecar 테스트를 위해 진행했는데... 잘 되는 것 확인!

 

윈도우에서도 잘 된다.!

            var builder = WebApplication.CreateBuilder(args);

            var socketName = "my.socket";
            var socketPath = Path.Join(Path.GetTempPath(), socketName);
            if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
                socketPath = Path.Join("/tmp", socketName);

            if (File.Exists(socketPath))
                File.Delete(socketPath);

            // Configure Kestrel to listen at the UDS path
            builder.WebHost.ConfigureKestrel(
                opts => opts.ListenUnixSocket(socketPath));

 

 

먼저 볼륨 이름을 확인,

sudo lvdisplay

 

sudo lvscan

 

우분투 리눅스 논리 볼륨 확장하기

sudo lvextend -l +100%FREE  /dev/ubuntu-vg/ubuntu-lv

 

 

확장 전 100G만 사용중이다.

 

확장 후 모습. /에 473.9(500G)사용할 수 있도록 하였다.

 

 

# sudo resize2fs /dev/ubuntu-vg/ubuntu-lv

sudo resize2fs [경로]

# ilspy를 이용한 모델 추출 스크립트

dotnet tool install ilspycmd

dotnet ilspycmd  .\MyModels\bin\Debug\net6.0\MyModels.dll --list c | `
                 Where-Object {$_ -like '*MyModel*'} | `
                 %{ $_.replace("Class MyModels.","") } | `
                 ConvertTo-Json -Compress

가끔씩 쓰는데 명령어가 헷갈릴 때가 있어 남겨둡니다.

bash 쉘에서 base64 툴 이용 시.

# base64 인코딩
echo "test" | base64

# base64 디코딩
echo "dGVzdAo=" | base64 -d

#  without new line
echo -n "test" | base64 -w 0

powershell에서 base64 툴 이용 시

# base64 인코딩
echo "test" | %{ [System.Convert]::ToBase64String([System.Text.Encoding]::UTF8.GetBytes($_)) }

# base64 디코딩
echo "dGVzdA==" | %{ [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String($_)) }

# %{ } 는 foreach의 shorthand다.

+ Recent posts