Driver FixRecommendedSound, Wi-Fi or graphics acting up? Check drivers firstFind missing or outdated drivers fast.Check DriversOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan Now×
Skip to content
World desk4 min

Forgejo Actions: Your Own CI/CD Runner with Docker-in-Docker

Forgejo hosts workflows; a separately registered Forgejo Runner executes them. Learn the Docker Compose pattern, label choices, and the security trade-offs of giving jobs daemon access.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

To run Forgejo Actions with Docker-in-Docker, install Forgejo Runner separately from Forgejo, register it for the repositories it should serve, and connect its job container to a Docker daemon. Forgejo hosts repositories and workflow definitions; the runner fetches and executes jobs. The official Docker Compose example uses a separate docker:dind service, but its unauthenticated daemon and the code workflows can run make this a security decision—not just a networking setting.

How Forgejo Actions and the runner fit together

Forgejo Actions provides the workflow system, but Forgejo does not execute the jobs itself. A separately installed Forgejo Runner polls Forgejo for work and runs the jobs it receives. Administrators can install multiple runners to distribute jobs; each needs a suitable execution environment and access to the Forgejo instance.

As an Amazon Associate I earn from qualifying purchases.

The Compose design documented by Forgejo uses two services: a runner container and a separate Docker-in-Docker daemon. The runner connects to that daemon using DOCKER_HOST. This lets jobs use Docker through the daemon, but it also means workflows can exercise capabilities exposed through that connection.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Set up the Docker Compose pattern

Forgejo’s official Docker installation guide demonstrates this arrangement with the runner OCI image tagged 13. Treat that as the guide’s example, not a guarantee that the tag is appropriate for every Forgejo deployment: check compatibility and current documentation for the versions you plan to run.

#1 Best Overall
HP EliteDesk 800 G2 Desktop Mini Business PC, Intel Quad-Core i5-6500T up to 3.1G, 16GB DDR4, 240GB SSD, VGA, DP, Win 11 Pro 64 bit (Renewed)
  • This Certified Refurbished product is tested and certified to look and work like new. The refurbishing process includes functionality testing, basic cleaning, inspection, and repackaging. The product ships with all relevant accessories, a minimum 90-day warranty, and may arrive in a generic box. Only select sellers who maintain a high performance bar may offer Certified Refurbished products on Amazon.com
  • Intel Quad-core i5-6500T up to 3.1G,16G DDR4 memory(2 slots,supports up to 32GB),240G SSD
  • Includes USB Keyboard(English Keyboard & Mouse Included)
  • I/O ports:Front:2 USB 3.0 ,microphone,headphone ,USB Type-C port Rear:4USB 3.0 ,VGA DP port,RJ-45
  • Operating System:Win10Pro64bit
  1. Prepare the runner configuration. The guide shows generating the default YAML configuration from the runner image. Review and configure it for your deployment rather than assuming generated defaults are production-ready.
  2. Register the runner before starting the services. Complete registration and configuration first; the guide notes that the Docker-in-Docker daemon will not start successfully until this is done.
  3. Run the services on a controlled Compose network. The example includes a docker:dind service that runs dockerd on TCP port 2375 without TLS, and sets the runner’s DOCKER_HOST to tcp://docker-in-docker:2375. It also uses persistent runner data and runs the runner as a non-root UID/GID.
  4. Check access before enabling workflows. Confirm which containers can reach the daemon and which repositories can send jobs to the runner. The example is a working pattern, not a hardened deployment recipe.

In this configuration, port 2375 is reachable over the Compose network without TLS. Keep that network private and tightly controlled: anyone who can reach the daemon may be able to control resources on it. Do not expose the daemon to an untrusted network or treat the runner container’s non-root user as sufficient isolation from job code.

Register the runner at the right scope

Registration determines which repositories are eligible to supply jobs. Forgejo’s runner registration guide describes interactive UI registration as the recommended method, as well as HTTP API and offline registration. Registration uses a UUID and token; protect the token as a credential.

Rank #2
Beelink SER3 Mini PC AMD Ryzen 3 3200U (up to 3.5GHz), 8GB DDR4 480GB PCIE3.0 SSD Mini Computer, Radeon Vega 3 Graphics,1000Mbps LAN, Dual HDMI 4K Display Home-Office PC
  • 【SER3 Next-Gen Light Office Mini PC】Beelink Mini pc New SER3 AMD Ryzen 3 3200U Processor (2.6-3.5GHz 2C/4T),with Radeon Vega 3 Graphics 3core 1200 MHz, Light office, 4K multimedia playback, virtual machine, NAS, meeting all your daily needs, Beelink mini pc is only 4.88 x 4.44 x 1.65 inches and takes up only 1/40
  • 【8GB DDR4 RAM+ 480GB PCIe3.0 SSD】SER3 Beelink mini pc comes with 8GB SODIMM DDR4 memory, dual-channel memory expansion slots supports up to 32GB (2x16GB) expansion, you can also replace the 480GB SSD up to 2TB (excluded) M.2 PCIE3.0 x4(2280) slot (Incompatible with SATA3 SSDs), or add a 2.5inch 7mm HDD(max 2TB, excluded) to expand the storage. Large capacity brings quicker load times across your entire catalogue of apps and programs
  • 【USB3.2 + WiFi 5 + BT 5.0】Beelink AMD Ryzen 3 3200U Mini Desktop Computer is equipped with rich interfaces: USB3.2x4, HDMI x2, 1000M LANx1. The transmission rate of USB3.2 is up to 10Gbps, 21 times faster than USB2.0. WiFi 5 (802.11ac) Bluetooth5.0 lower latency , more stable and efficient to connect to multiple wireless devices such as projector, printer, monitor, speakers and etc
  • 【Improve Work Efficiency】SER3 Dual HDMI prots allow you to expand your viewing area to enjoy better experience and multi-task easily, i.e. web browsing, design, 4K videos playback, online class, perfectly valid as a multimedia center to use KODI, IPTV or use as a digital signage and brings true-to-life 4K@60Hz visual feat to the audiance
  • 【Why Beelink Mini PC】Beelink SER3 VESA mount can hide the micro pc behind a monitor or HDTV like an all-in-one pc, free you from messy desktop, Cooling system Large fan and dual heat conduction tube,make heat dissipation more efficient,3200U Mini desktop pc also supports Wake On LAN, RTC Wake, Auto Power On, a great to use as a server for media (Plex or FTP)
Registration scope Who can use the runner Practical implication
Instance Repositories across the Forgejo instance Broadest access; workflows from any eligible repository may run on this runner.
Organization Repositories in the selected organization Useful when an organization shares runner capacity and workflow trust.
User Repositories belonging to the selected user Limits eligibility to that user’s repositories.
Repository One repository Narrowest scope; suitable when the runner should serve only a specific project.

Choose the narrowest scope that meets the operational need. A broad scope increases the set of workflow authors whose code can reach the runner’s configured capabilities. The registration guide also describes ephemeral registration for on-demand runner instances, which can reduce exposure associated with a long-lived worker.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Choose a label that matches the workflow

A runner label has a name, an execution type, and a default image. Workflows select runners using runs-on; the requested label needs to match a label the runner provides. Forgejo’s runner configuration guide documents Docker/Podman, LXC, and host execution types.

Rank #3
HP EliteDesk 800 G4 Mini Tiny Business PC, Intel Hexa-Core i5-8500T up to 3.5GHz, 16GB DDR4 RAM, 256GB NVMe SSD, Dual Monitor Support, WiFi, Bluetooth, HDMI, DisplayPort, Windows 11 64-bit (Renewed)
  • Powerful Performance: Intel Core i5 Hexa Core processor for reliable multitasking and smooth computing.
  • Fast & Efficient: 16GB DDR4 RAM and 250GB SSD for quick startup and performance.
  • Windows 11 Pro: Modern operating system with professional-grade tools and enhanced security.
  • Compact Design: Space-saving mini chassis fits neatly on or under your desk.
  • Renewed Quality: Professionally tested and renewed to perform like new; may show minor cosmetic wear.
  • Docker or Podman: The label selects a default job image. Use an image that contains the tools the workflow and its actions require.
  • LXC: An alternative containerization type. Forgejo’s security discussion describes LXC as providing stronger isolation in the comparison it makes, but that does not make untrusted code inherently safe.
  • Host: Jobs execute on the host environment rather than in the Docker job-container model. This can expose host-installed tools and resources, so assess the host boundary carefully.

For reproducible jobs, pin the image to a version or digest instead of relying on a moving tag. Forgejo cautions that starting a container does not automatically update an image already downloaded. Plan how images are refreshed, and account for their source and trustworthiness.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Decide whether Docker access is appropriate

Forgejo’s administrator guide states: “Forgejo Runner performs remote code execution.” A workflow is code, and anyone able to alter a workflow the runner executes may be able to use the capabilities available to that job. Giving jobs access to a Docker daemon can allow them to inspect or modify containers and other resources managed by that daemon.

Forgejo’s Actions administrator guide and documentation on utilizing Docker within Actions distinguish Docker-in-Docker from socket or automount-style access and discuss the isolation trade-offs. Neither a separate daemon nor a container boundary should be treated as a blanket guarantee against malicious workflows. The right design depends on what the jobs must do and which contributors and repositories you trust.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • Review who can edit workflows and trigger jobs, including changes proposed by outside contributors.
  • Limit runner registration scope to the repositories that need it.
  • Control daemon reachability and consider what the daemon can access or mutate.
  • Review workflow secrets, outbound network access, and the sources of job images and actions.
  • Consider ephemeral workers for workloads that do not need a persistent runner.
  • Choose Docker, LXC, or host execution based on required capabilities and the isolation boundary you can maintain.

For private projects with trusted workflow authors, the Compose pattern can be a practical way to provide Docker-capable jobs. For untrusted code, first design the runner, daemon, network, secrets, and worker lifecycle around that threat model; the example alone does not establish a safe configuration.

Best Value
Beelink Me Pro, Mini PC NAS, Intel N150 CPU, 16GB LPDDR5, 1TB SSD, 3*M.2 PCIe3.0 SSD Slots + 2*HDD Bays(MAX 72TB), 5G + 2.5G Dual LAN/WiFi6/BT5.4, 4K Media Library, Private Cloud, Soft Router
  • 【Hybrid 2-Bay Storage: NAS & Mini PC in One】Beelink ME Pro features two 3.5"/2.5" SATA HDD slots and three M.2 PCIe3.0 SSD slots (pre-installed with a 1TB system drive) supporting a massive 72TB expansion. it’s the ultimate solution for building a massive private cloud, automated backups, or a centralized media library
  • 【Next-Gen Intel N150 & 16GB LPDDR5】 Powered by the Intel N150 processor (up to 3.6GHz, max 25W TDP) and 16GB LPDDR5 4800MT/s RAM, this mini pc delivers efficient multitasking and smooth performance for home office, virtualization, and server tasks with lower power consumption
  • 【5GbE + 2.5GbE High-Speed Dual Networking】 Equipped with 5G & 2.5G Ethernet ports, this Dual LAN Mini PC supports network aggregation and high-speed data transfer. Ideal for stable, lag-free access to your files, high-speed downloading, and advanced networking configurations like soft routing
  • 【Swappable Modular Motherboard】The innovative DlY drawer-style design supports easy motherboard upgrades, compatible with Intel N-series, Intel 12th/13th/14th/15th Gen, AMD FP8 series, and ARM architectures
  • 【Easy Dust Cleaning】Simply slide out the motherboard for quick maintenance

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Outdated Drivers Are Slowing You DownFree scan - exact matches
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.