Skip to main content

OneDev

What is OneDev?

OneDev is a self-hosted Git server with built-in CI/CD pipelines and issue tracking, packaged as a single container with no external database dependency. Laradock runs it standalone, unlike GitLab it doesn't need postgres or redis.

Start OneDev

docker compose up -d onedev

Stop OneDev

docker compose stop onedev

This stops the container without deleting its data. OneDev's state lives under DATA_PATH_HOST/onedev on your host.

Configuration

All settings live in onedev/defaults.env and can be overridden by adding the same line to your own .env (your .env always wins):

VariableDefaultWhat it does
ONEDEV_HTTP_PORT6610Host-side port for the OneDev web UI.
ONEDEV_SSH_PORT6611Host-side port for Git-over-SSH.

Complete the setup wizard

  1. Start the container, then open http://localhost:6610.
  2. Follow the setup wizard to create your admin account.

Git over SSH is available on port 6611 by default; clone with ssh://git@localhost:6611/<repo-path>.

Common issues

  • Port 6610 or 6611 already in use. Change ONEDEV_HTTP_PORT or ONEDEV_SSH_PORT in .env and restart: docker compose up -d onedev.
  • First page load is slow. OneDev initializes its embedded database and search index on first boot; give it a minute and check docker compose logs -f onedev.
  • SSH clone fails. Confirm you're using the mapped host port (ONEDEV_SSH_PORT, 6611 by default), not the container-internal 6611 if you've remapped it, and that your SSH key is added in OneDev's user settings.

Need CI/CD without a bundled Git server instead? See Jenkins. Prefer a fuller-featured self-hosted GitHub alternative? See GitLab. New to Laradock? Start at Getting Started.