56 lines
1.4 KiB
YAML
56 lines
1.4 KiB
YAML
- name: Pull and run private GHCR image
|
|
hosts: all
|
|
become: true
|
|
|
|
tasks:
|
|
- name: Backup current resolv.conf
|
|
ansible.builtin.copy:
|
|
src: /etc/resolv.conf
|
|
dest: /etc/resolv.conf.backup
|
|
remote_src: true
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
|
|
- name: Replace resolv.conf with electro version
|
|
ansible.builtin.copy:
|
|
src: /etc/resolv.conf.electro
|
|
dest: /etc/resolv.conf
|
|
remote_src: true
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
|
|
- name: Log in to GitHub Container Registry
|
|
community.docker.docker_login:
|
|
registry_url: ghcr.io
|
|
username: "{{ ghcr_username }}"
|
|
password: "{{ ghcr_token }}"
|
|
|
|
- name: Pull image from GHCR
|
|
community.docker.docker_image:
|
|
name: "{{ image_name }}"
|
|
source: pull
|
|
|
|
- name: Restore original resolv.conf
|
|
ansible.builtin.copy:
|
|
src: /etc/resolv.conf.backup
|
|
dest: /etc/resolv.conf
|
|
remote_src: true
|
|
owner: root
|
|
group: root
|
|
mode: '0644'
|
|
|
|
- name: Stop stage container if it exists
|
|
docker_container:
|
|
name: echo
|
|
state: absent
|
|
|
|
- name: Run container from image
|
|
community.docker.docker_container:
|
|
name: echo
|
|
image: "{{ image_name }}"
|
|
command: ["examples.server_web"]
|
|
restart_policy: always
|
|
ports:
|
|
- "3000:3000" |