- ollama Part 1. Running locally in the terminal : Linux (wsl 2), MacOS
? ollama Part 2. Running in a local browser: open-webui
- ollama Part 3. Running it in a browser online (with my own domain) :
- ollama Part 4. Applying RAG (Retrieval Augmented Generation)
- ollama Part 5. Applying image recognition
- (Coming soon) ollama Part 6. Applying MOE (mixture of experts) approach
ollama local browser
1. Running with a Docker image (Mac terminal environment, almost identical to Windows cmd)
1) Sign up for Docker, then log in
2) Install Docker for your computer's OS
Install Docker Engine
Learn how to choose the best method for you to install Docker Engine. This client-server application is available on Linux, Mac, Windows, and as a static binary.
docs.docker.com
3) Search for [Terminal] and run it
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v ollama-webui:/app/backend/data --name ollama-webui --restart always ghcr.io/ollama-webui/ollama-webui:main
When you enter the command above and press enter, you'll see the result below
4) Open a browser and access the Web UI
http://localhost:3000
5) Sign up. (Local-only — no email verification)
6) (After login) main screen
Click (1) to select one of the models you've installed.
Click (2) to manage your own documents and prompts.
#Reference 1. Result of building the image with Docker
#Reference 2. Docker — ollama official page
Docker
hub.docker.com
ollama local browser
2. Running by configuring FE/BE directly
1) Search for [Terminal] and run it
2) Pull the basic code for building the WebUI from GitHub onto your computer (*Install in the folder you want. Remember the location, ha)
git clone https://github.com/ollama-webui/ollama-webui.git
3) Move into the installed folder
cd ollama-webui/
4) Copy the configuration file (*For reference, regardless of whether you do simple ollama hands-on practice or not ;; I strongly recommend learning about '.gitignore' and '.env' in advance — it's about your personal information.)
cp -RPp example.env .env
5) FE — front-end setup — The code pulled from GitHub above is the baseline. Install the libraries each piece of code depends on at the latest version, or at a version suitable for your hardware (* This is the section where unexplained errors happen — particularly the "why is it not working only for me?" or "why is mine different?" moments. If you encounter an error, googling is recommended)
npm i
6) Build to deploy the locally installed code
npm run build
7) Move into the backend folder
cd ./backend
8) BE — back-end setup — The code pulled from GitHub above is the baseline. Install the libraries each piece of code depends on at the latest version, or at a version suitable for your hardware (* This is the section where unexplained errors happen — particularly the "why is it not working only for me?" or "why is mine different?" moments. If you encounter an error, googling is recommended)
pip install -r requirements.txt -U
9) Start the WebUI
sh start.sh
10) Access the WebUI (same as Docker)
Docker VS direct FE/BE setup
3. Difference between Docker and front-end/back-end direct setup
About. Docker
Pros. A single line of code in the terminal and you're up and running. The frequency of errors during environment setup is very low. For mere experience or personal use, this is a very useful approach.
Cons. When the container is removed, the data created inside it is also removed. Of course, you can spin up multiple containers and manage them with Kubernetes, but the complexity of continuous data management inevitably increases.
About. Front-end/back-end direct setup
Pros. When you run the code above, in some cases it might run in one go… but for most people, different errors will have appeared depending on the OS or the version. In this same way, beyond your personal computer, within an enterprise you can optimize on the infrastructure side or on the design-concept side. It is also a necessary process when adding granular features such as RAG.
Cons. The example above was, in truth, a copy-paste of execution code for hands-on practice. In real-world work, hand-crafting? the detailed contents of that code can feel daunting if it's outside your domain or if you're a beginner.
