Ollama 외부 접속

ollama를 외부접속하게 만들려고 한다. 그래서 ollama 설치 후, systemd 등록 파일로 프로세스를 띄웠다.

[Unit]
Description=Ollama Service
After=network.target

[Service]
ExecStart=/usr/local/bin/ollama serve
User=root
Restart=always
RestartSec=3

Environment="OLLAMA_HOST=0.0.0.0"

[Install]
WantedBy=multi-user.target

default 가 127.0.0.1:11434로 프로세스가 띄워지기 때문에 외부에서 접속할 수 있게 0.0.0.0:11434으로 띄워야 한다. Environment="OLLAMA_HOST=0.0.0.0" 으로 등록하여 anywhere로 접근하게 만들었다.

하지만, TCP6로만 열리고, TCP4로는 열리지 않았다.

이런 문제를 해결하기 위해 nginx로 로드밸런서 처리를 하여 외부에서 ollama를 접속할 수 있게 만들었다.

# /etc/nginx/site-availables/

server {
    listen 11433; # ollama port

    location / {
        proxy_pass http://[::1]:11434;  # Ollama 서버의 IPv6 주소와 포트
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

nginx에서 이렇게 설정하여, nginx에 들어오는 트래픽을 ollama로 들어가게 설정하였다.

새로운 설정 파일 활성화

sites-enabled 디렉터리에 올바른 파일이 없기 때문에, 이전에 생성한 ollama 설정 파일을 활성화.

sudo ln -s /etc/nginx/sites-available/ollama /etc/nginx/sites-enabled/default

Nginx 설정 다시 확인

올바른 파일이 활성화되었는지 확인.

sudo nginx -t

댓글

댓글 남기기