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


댓글 남기기