Ensure docker is available:
[root@rocky ~]# systemctl status docker.service containerd.service
[[green:●]] docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: disabled)
Active: [[green:active (running)]] since Mon 2026-08-10 15:46:59 UTC; 6min ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 221885 (dockerd)
Tasks: 8
Memory: 107.6M (peak: 121.7M)
CPU: 644ms
CGroup: /system.slice/docker.service
└─221885 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
Aug 10 15:46:58 rocky dockerd[221885]: time="2026-08-10T15:46:58.632816723Z" level=info msg="Restoring contain>
Aug 10 15:46:58 rocky dockerd[221885]: time="2026-08-10T15:46:58.703629479Z" level=info msg="Deleting nftables>
Aug 10 15:46:58 rocky dockerd[221885]: time="2026-08-10T15:46:58.709459703Z" level=info msg="Deleting nftables>
Aug 10 15:46:59 rocky dockerd[221885]: time="2026-08-10T15:46:59.196677528Z" level=info msg="Loading container>
Aug 10 15:46:59 rocky dockerd[221885]: time="2026-08-10T15:46:59.233034078Z" level=info msg="Docker daemon" co>
Aug 10 15:46:59 rocky dockerd[221885]: time="2026-08-10T15:46:59.233790527Z" level=info msg="Initializing buil>
Aug 10 15:46:59 rocky dockerd[221885]: time="2026-08-10T15:46:59.523616824Z" level=info msg="Completed buildki>
Aug 10 15:46:59 rocky dockerd[221885]: time="2026-08-10T15:46:59.534309168Z" level=info msg="Daemon has comple>
Aug 10 15:46:59 rocky dockerd[221885]: time="2026-08-10T15:46:59.534691224Z" level=info msg="API listen on /ru>
Aug 10 15:46:59 rocky systemd[1]: Started Docker Application Container Engine.
[[green:●]] containerd.service - containerd container runtime
Loaded: loaded (/usr/lib/systemd/system/containerd.service; disabled; preset: disabled)
Active: [[green:active (running)]] since Mon 2026-08-10 15:46:58 UTC; 6min ago
Docs: https://containerd.io
Process: 221874 ExecStartPre=/sbin/modprobe overlay (code=exited, status=0/SUCCESS)
Main PID: 221875 (containerd)
Tasks: 7
Memory: 43.1M (peak: 54.8M)
CPU: 385ms
CGroup: /system.slice/containerd.service
└─221875 /usr/bin/containerd
Aug 10 15:46:58 rocky containerd[221875]: time="2026-08-10T15:46:58.338957791Z" level=info msg="loading plugin>
Aug 10 15:46:58 rocky containerd[221875]: time="2026-08-10T15:46:58.339261424Z" level=info msg="skip loading p>
Aug 10 15:46:58 rocky containerd[221875]: time="2026-08-10T15:46:58.339281431Z" level=info msg="loading plugin>
Aug 10 15:46:58 rocky containerd[221875]: time="2026-08-10T15:46:58.339380258Z" level=info msg="loading plugin>
Aug 10 15:46:58 rocky containerd[221875]: time="2026-08-10T15:46:58.339396066Z" level=info msg="skip loading p>
Aug 10 15:46:58 rocky containerd[221875]: time="2026-08-10T15:46:58.342053162Z" level=info msg=serving... addr>
Aug 10 15:46:58 rocky containerd[221875]: time="2026-08-10T15:46:58.342223678Z" level=info msg="starting GRPC >
Aug 10 15:46:58 rocky containerd[221875]: time="2026-08-10T15:46:58.342334702Z" level=info msg=serving... addr>
Aug 10 15:46:58 rocky systemd[1]: Started containerd container runtime.
Aug 10 15:46:58 rocky containerd[221875]: time="2026-08-10T15:46:58.347490292Z" level=info msg="containerd suc>
Install act:
[root@rocky ~]# cd /tmp
[root@rocky tmp]# curl --location --remote-name https://github.com/nektos/act/releases/latest/download/act_Linux_x86_64.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 8007k 100 8007k 0 0 23.1M 0 --:--:-- --:--:-- --:--:-- 23.1M
[root@rocky tmp]# ls -l act_Linux_x86_64.tar.gz
-rw-r--r--. 1 root root 8200078 Aug 10 15:57 act_Linux_x86_64.tar.gz
[root@rocky tmp]# tar zxvf act_Linux_x86_64.tar.gz
LICENSE
README.md
act ---this
[root@rocky tmp]# ls -l act
-rwxr-xr-x. 1 kmaau kmaau 21115064 Jun 1 03:19 act
[root@rocky tmp]# file act
act: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, BuildID[sha1]=db116eca44300636802ec580c6ea7a83f8a3f8e1, stripped
[root@rocky tmp]# mv act /usr/local/bin
[root@rocky tmp]# chown root:root /usr/local/bin/act
[root@rocky tmp]# ls -l /usr/local/bin/act
-rwxr-xr-x. 1 root root 21115064 Jun 1 03:19 /usr/local/bin/act
[root@rocky tmp]# which act
/usr/local/bin/act
[root@rocky tmp]# act --version
act version 0.2.89
Working with act:
[root@rocky tmp]# su - kmaau
Last login: Mon Aug 10 05:26:23 UTC 2026 on pts/0
[kmaau@rocky ~]$ whoami
kmaau
[kmaau@rocky ~]$ mkdir ${HOME}/act-demo
[kmaau@rocky ~]$ ls -ld ${HOME}/act-demo
drwxr-xr-x. 2 kmaau kmaau 6 Aug 10 16:04 /home/kmaau/act-demo
[kmaau@rocky ~]$ cd ${HOME}/act-demo
[kmaau@rocky act-demo]$ ls -la
drwxr-xr-x. 2 kmaau kmaau 6 Aug 10 16:04 .
drwx------. 4 kmaau kmaau 4096 Aug 10 16:04 ..
[kmaau@rocky act-demo]$ git init
Initialized empty Git repository in /home/kmaau/act-demo/.git/
[kmaau@rocky act-demo]$ ls -la
drwxr-xr-x. 3 kmaau kmaau 18 Aug 10 16:05 .
drwx------. 4 kmaau kmaau 4096 Aug 10 16:04 ..
drwxr-xr-x. 6 kmaau kmaau 103 Aug 10 16:05 .git
[kmaau@rocky act-demo]$ mkdir -p .github/workflows
#
# create workflow:
#
[kmaau@rocky act-demo]$ vi .github/workflows/ci.yml
::
::
[kmaau@rocky act-demo]$ cat .github/workflows/ci.yml
[[blue:name: Demo CI]]
[[blue:]]
[[blue:on:]]
[[blue: push:]]
[[blue:]]
[[blue:jobs:]]
[[blue: hello:]]
[[blue: runs-on: ubuntu-latest]]
[[blue:]]
[[blue: steps:]]
[[blue: - name: Checkout]]
[[blue: uses: actions/checkout@v4]]
[[blue:]]
[[blue: - name: Show Environment]]
[[blue: run: |]]
[[blue: echo "Hello from GitHub Actions"]]
[[blue: uname -a]]
[[blue: pwd]]
[kmaau@rocky workflows]$ act --list
[[blue:INFO[0000]]] Using docker host 'unix:///var/run/docker.sock', and daemon socket 'unix:///var/run/docker.sock'
[[red:Error: stat /home/kmaau/act-demo/.github/workflows/.github/workflows: no such file or directory]]
[kmaau@rocky workflows]$ cd ${HOME}/act-demo
[kmaau@rocky act-demo]$ act --list
[[blue:INFO]][0000] Using docker host 'unix:///var/run/docker.sock', and daemon socket 'unix:///var/run/docker.sock'
Stage Job ID Job name Workflow name Workflow file Events
0 hello hello Demo CI ci.yml push
#
# run the workflow by simulate a GitHub push:
#
[kmaau@rocky act-demo]$ act push
[[blue:INFO]][0000] Using docker host 'unix:///var/run/docker.sock', and daemon socket 'unix:///var/run/docker.sock'
[[green:?]] Please choose the default image you want to use with act:
- Large size image: ca. 17GB download + 53.1GB storage, you will need 75GB of free disk space,
snapshots of GitHub Hosted Runners without snap and pulled docker images
- Medium size image: ~500MB, includes only necessary tools to bootstrap actions and aims to be compatible with most actions
- blue:Micro size image: <200MB, contains only NodeJS required to bootstrap actions, doesn't work with all actions
Default image and other options can be changed manually in /home/kmaau/.config/act/actrc
(please refer to https://nektosact.com/usage/index.html?highlight=configur#configuration-file for additional information about file structure) [[blue:Micro]]
[[yellow:WARN]][0033] unable to get git ref: reference not found
[[yellow:WARN]][0033] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] ⭐ Run Set up job
[[yellow:[Demo CI/hello]]] 🚀 Start image=node:16-buster-slim
[[yellow:[Demo CI/hello]]] 🐳 docker pull image=node:16-buster-slim platform= username= forcePull=true
[[yellow:[Demo CI/hello]]] 🐳 docker create image=node:16-buster-slim platform= entrypoint=["tail" "-f" "/dev/null"] cmd=[] network="host"
[[yellow:[Demo CI/hello]]] 🐳 docker run image=node:16-buster-slim platform= entrypoint=["tail" "-f" "/dev/null"] cmd=[] network="host"
[[yellow:[Demo CI/hello]]] 🐳 docker exec cmd=[node --no-warnings -e console.log(process.execPath)] user= workdir=
[[yellow:[Demo CI/hello]]] ✅ Success - Set up job
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] ⭐ Run Main Checkout
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] 🐳 docker cp src=/home/kmaau/act-demo/. dst=/home/kmaau/act-demo
[[yellow:[Demo CI/hello]]] ✅ Success - Main Checkout [27.940818ms]
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] ⭐ Run Main Show Environment
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] 🐳 docker exec cmd=[bash -e /var/run/act/workflow/1] user= workdir=
| Hello from GitHub Actions
| Linux rocky 5.14.0-687.10.1.el9_8.0.1.x86_64 #1 SMP PREEMPT_DYNAMIC Sun May 24 12:01:19 UTC 2026 x86_64 GNU/Linux
| /home/kmaau/act-demo
[[yellow:[Demo CI/hello]]] ✅ Success - Main Show Environment [111.10422ms]
[[yellow:[Demo CI/hello]]] ⭐ Run Complete job
[[yellow:[Demo CI/hello]]] Cleaning up container for job hello
[[yellow:[Demo CI/hello]]] unable to get git ref: reference not found
[[yellow:[Demo CI/hello]]] unable to get git revision: reference not found
[[yellow:[Demo CI/hello]]] ✅ Success - Complete job
[[yellow:[Demo CI/hello]]] 🏁 Job succeeded
Using secret:
[kmaau@rocky act-demo]$ vi .github/workflows/secret.yml
::
::
[kmaau@rocky act-demo]$ cat .github/workflows/secret.yml
[[blue:name: Using Secret]]
[[blue:]]
[[blue:on:]]
[[blue: push:]]
[[blue:]]
[[blue:env:]]
[[blue: GH_TOKEN: ${{ secrets.GH_TOKEN }}]]
[[blue:]]
[[blue:jobs:]]
[[blue: secret:]]
[[blue: runs-on: ubuntu-latest]]
[[blue:]]
[[blue: steps:]]
[[blue: - name: Checkout]]
[[blue: uses: actions/checkout@v4]]
[[blue:]]
[[blue: - name: Echo Secret]]
[[blue: run: |]]
[[blue: echo "$GH_TOKEN"]]
[[blue: echo "${{ env.GH_TOKEN }}"]]
[kmaau@rocky act-demo]$ act --list
INFO[0000] Using docker host 'unix:///var/run/docker.sock', and daemon socket 'unix:///var/run/docker.sock'
Stage Job ID Job name Workflow name Workflow file Events
0 hello hello Demo CI ci.yml push
0 secret secret Using Secret secret.yml push
[kmaau@rocky act-demo]$ act --job secret --secret GH_TOKEN=myToken
[[green:INFO]][0000] Using docker host 'unix:///var/run/docker.sock', and daemon socket 'unix:///var/run/docker.sock'
[[yellow:WARN]][0000] unable to get git ref: reference not found
[[yellow:WARN]][0000] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] ⭐ Run Set up job
[[yellow:[Using Secret/secret]]] 🚀 Start image=node:16-buster-slim
[[yellow:[Using Secret/secret]]] 🐳 docker pull image=node:16-buster-slim platform= username= forcePull=true
[[yellow:[Using Secret/secret]]] 🐳 docker create image=node:16-buster-slim platform= entrypoint=["tail" "-f" "/dev/null"] cmd=[] network="host"
[[yellow:[Using Secret/secret]]] 🐳 docker run image=node:16-buster-slim platform= entrypoint=["tail" "-f" "/dev/null"] cmd=[] network="host"
[[yellow:[Using Secret/secret]]] 🐳 docker exec cmd=[node --no-warnings -e console.log(process.execPath)] user= workdir=
[[yellow:[Using Secret/secret]]] ✅ Success - Set up job
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] ⭐ Run Main Checkout
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] 🐳 docker cp src=/home/kmaau/act-demo/. dst=/home/kmaau/act-demo
[[yellow:[Using Secret/secret]]] ✅ Success - Main Checkout [30.346656ms]
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] ⭐ Run Main Echo Secret
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] 🐳 docker exec cmd=[bash -e /var/run/act/workflow/1] user= workdir=
| ***
| ***
[[yellow:[Using Secret/secret]]] ✅ Success - Main Echo Secret [119.241268ms]
[[yellow:[Using Secret/secret]]] ⭐ Run Complete job
[[yellow:[Using Secret/secret]]] Cleaning up container for job secret
[[yellow:[Using Secret/secret]]] unable to get git ref: reference not found
[[yellow:[Using Secret/secret]]] unable to get git revision: reference not found
[[yellow:[Using Secret/secret]]] ✅ Success - Complete job
[[yellow:[Using Secret/secret]]] 🏁 Job succeeded
Clean up:
[kmaau@rocky act-demo]$ cd ${HOME}
[kmaau@rocky ~]$ rm -rf ${HOME}/act-demo