Skip to content

Commit 1060a40

Browse files
committed
Bump up to ubuntu 22.04
> Ensure your version of systemd supports cgroupv2. > It must be at least systemd 247. Consider upgrading any centos:7 images to centos:8. > Containers running systemd need the following options: > --privileged --cgroupns=host -v /sys/fs/cgroup:/sys/fs/cgroup:rw. Refs: * docker/compose@b4b7319 * https://docs.docker.com/desktop/release-notes/#docker-desktop-430 Signed-off-by: Nobuhiro MIKI <nob@bobuhiro11.net>
1 parent 971570b commit 1060a40

8 files changed

Lines changed: 41 additions & 120 deletions

File tree

.github/workflows/action.yaml

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,23 @@ on:
77
pull_request:
88
jobs:
99
lint:
10-
runs-on: ubuntu-20.04
10+
runs-on: ubuntu-22.04
1111
steps:
1212
- uses: actions/checkout@v2
1313
- name: hadolint for controller
1414
run: docker run -e "HADOLINT_IGNORE=DL3008" --rm -i hadolint/hadolint < controller/Dockerfile
1515
- name: hadolint for compute
1616
run: docker run -e "HADOLINT_IGNORE=DL3008" --rm -i hadolint/hadolint < compute/Dockerfile
1717
test:
18-
runs-on: ubuntu-20.04
18+
runs-on: ubuntu-22.04
1919
steps:
2020
- uses: actions/checkout@v2
21+
- name: Install docker-compose
22+
uses: ndeloof/install-compose-action@v0.0.1
23+
with:
24+
version: v2.17.3
25+
legacy: true
26+
- run: docker-compose --version
2127
- name: Build Images
2228
run: |
2329
docker-compose --file docker-compose.build.yaml up -d

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
This project easily deploys OpenStack in docker & docker-compose.
44
This is mainly for development purpose.
55

6-
NOTE: This is only tested on **x64 Ubuntu 20.04 machine**. It may work
6+
NOTE: This is only tested on **x64 Ubuntu 22.04 machine**. It may work
77
on other Linux Distributions. Other CPU architectures and operating
88
systems cannot be supported.
99

compute/Dockerfile

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
FROM ubuntu:20.04
1+
FROM ubuntu:22.04
22

33
EXPOSE 80 5000 8773 8774 8775 8776 9292
44
ENV DEBIAN_FRONTEND=noninteractive
5-
ENV DEVSTACK_COMMIT=ab8e51eb49068a8c5004007c18fdfb9b1fcc0954
5+
ENV DEVSTACK_COMMIT=b33ec4bf1bec70f9a95af55fe47d30418c7325c2
66

77
ENV OS_REGION_NAME=RegionOne
88
ENV OS_PROJECT_DOMAIN_ID=default
@@ -30,13 +30,17 @@ RUN apt-get update \
3030
init \
3131
ebtables \
3232
jq \
33+
openvswitch-switch \
3334
&& apt-get -y clean \
3435
&& rm -rf /var/lib/apt/lists/* \
3536
&& curl https://raw.githubusercontent.com/vishnubob/wait-for-it/master/wait-for-it.sh > /bin/wait-for-it.sh \
3637
&& chmod a+x /bin/wait-for-it.sh \
3738
&& useradd -s /bin/bash -d /opt/stack -m stack \
3839
&& mkdir -p /etc/sudoers.d/ \
39-
&& echo "stack ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/stack
40+
&& echo "stack ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/stack \
41+
# https://review.opendev.org/c/openstack/devstack/+/838645 \
42+
&& chmod +x /opt/stack \
43+
&& systemctl enable openvswitch-switch.service
4044

4145
WORKDIR /opt/stack
4246
RUN git clone https://github.com/openstack/devstack.git \

compute/devstack.service

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ Description=devstack
55
User=stack
66
Type=oneshot
77
ExecStartPre=/bin/wait-for-it.sh -h 172.28.0.2 -p 80 -t 3600
8+
ExecStartPre=/usr/bin/sudo /usr/bin/ovs-vsctl set-manager ptcp:6640
89
ExecStart=/opt/stack/devstack/stack.sh
910
ExecReload = /usr/bin/kill -HUP $MAINPID
1011
KillMode = process

controller/Dockerfile

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
FROM ubuntu:20.04
1+
FROM ubuntu:22.04
22

33
EXPOSE 80 5000 8773 8774 8775 8776 9292
44
ENV DEBIAN_FRONTEND=noninteractive
5-
ENV DEVSTACK_COMMIT=ab8e51eb49068a8c5004007c18fdfb9b1fcc0954
5+
ENV DEVSTACK_COMMIT=b33ec4bf1bec70f9a95af55fe47d30418c7325c2
66

77
ENV OS_REGION_NAME=RegionOne
88
ENV OS_PROJECT_DOMAIN_ID=default
@@ -30,13 +30,17 @@ RUN apt-get update \
3030
init \
3131
ebtables \
3232
jq \
33+
openvswitch-switch \
3334
&& apt-get -y clean \
3435
&& rm -rf /var/lib/apt/lists/* \
3536
&& curl https://raw.githubusercontent.com/vishnubob/wait-for-it/master/wait-for-it.sh > /bin/wait-for-it.sh \
3637
&& chmod a+x /bin/wait-for-it.sh \
3738
&& useradd -s /bin/bash -d /opt/stack -m stack \
3839
&& mkdir -p /etc/sudoers.d/ \
39-
&& echo "stack ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/stack
40+
&& echo "stack ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/stack \
41+
# https://review.opendev.org/c/openstack/devstack/+/838645 \
42+
&& chmod +x /opt/stack \
43+
&& systemctl enable openvswitch-switch.service
4044

4145
WORKDIR /opt/stack
4246
RUN git clone https://github.com/openstack/devstack.git \

controller/devstack.service

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ Description=devstack
44
[Service]
55
User=stack
66
Type=oneshot
7+
ExecStartPre=/bin/sleep 10
8+
ExecStartPre=/usr/bin/sudo /usr/bin/ovs-vsctl set-manager ptcp:6640
79
ExecStart=/opt/stack/devstack/stack.sh
810
ExecReload = /usr/bin/kill -HUP $MAINPID
911
KillMode = process

docker-compose.build.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,10 @@ services:
88
dockerfile: controller/Dockerfile
99
privileged: true
1010
tty: true
11+
cgroup: host
1112
volumes:
1213
- '/lib/modules:/lib/modules'
14+
- '/sys/fs/cgroup:/sys/fs/cgroup:rw'
1315
sysctls:
1416
net.ipv6.conf.all.disable_ipv6: 0
1517
net.ipv6.conf.default.disable_ipv6: 0
@@ -26,8 +28,10 @@ services:
2628
dockerfile: compute/Dockerfile
2729
privileged: true
2830
tty: true
31+
cgroup: host
2932
volumes:
3033
- '/lib/modules:/lib/modules'
34+
- '/sys/fs/cgroup:/sys/fs/cgroup:rw'
3135
sysctls:
3236
net.ipv6.conf.all.disable_ipv6: 0
3337
net.ipv6.conf.default.disable_ipv6: 0
@@ -44,8 +48,10 @@ services:
4448
dockerfile: compute/Dockerfile
4549
privileged: true
4650
tty: true
51+
cgroup: host
4752
volumes:
4853
- '/lib/modules:/lib/modules'
54+
- '/sys/fs/cgroup:/sys/fs/cgroup:rw'
4955
sysctls:
5056
net.ipv6.conf.all.disable_ipv6: 0
5157
net.ipv6.conf.default.disable_ipv6: 0

docker-compose.yaml

Lines changed: 9 additions & 111 deletions
Original file line numberDiff line numberDiff line change
@@ -4,45 +4,11 @@ services:
44
container_name: controller
55
hostname: controller
66
image: bobuhiro11/containerized-devstack-controller
7+
privileged: true
78
tty: true
8-
security_opt:
9-
- seccomp:unconfined
10-
- apparmor:unconfined
11-
cap_add:
12-
- CHOWN
13-
- DAC_OVERRIDE
14-
- DAC_READ_SEARCH
15-
- FOWNER
16-
- FSETID
17-
- IPC_LOCK
18-
- IPC_OWNER
19-
- KILL
20-
- LEASE
21-
- LINUX_IMMUTABLE
22-
- MAC_ADMIN
23-
- MAC_OVERRIDE
24-
- MKNOD
25-
- NET_ADMIN
26-
- NET_BIND_SERVICE
27-
- NET_BROADCAST
28-
- NET_RAW
29-
- SETFCAP
30-
- SETGID
31-
- SETPCAP
32-
- SETUID
33-
- SYS_ADMIN
34-
- SYS_CHROOT
35-
- SYS_NICE
36-
- SYS_PACCT
37-
- SYS_PTRACE
38-
- SYS_RAWIO
39-
- SYS_RESOURCE
40-
tmpfs:
41-
- /tmp
42-
- /run
43-
- /run/lock
9+
cgroup: host
4410
volumes:
45-
- '/sys/fs/cgroup:/sys/fs/cgroup:ro'
11+
- '/sys/fs/cgroup:/sys/fs/cgroup:rw'
4612
devices:
4713
- '/dev/net/tun:/dev/net/tun'
4814
sysctls:
@@ -57,45 +23,11 @@ services:
5723
container_name: compute-1
5824
hostname: compute-1
5925
image: bobuhiro11/containerized-devstack-compute-1
26+
privileged: true
6027
tty: true
61-
security_opt:
62-
- seccomp:unconfined
63-
- apparmor:unconfined
64-
cap_add:
65-
- CHOWN
66-
- DAC_OVERRIDE
67-
- DAC_READ_SEARCH
68-
- FOWNER
69-
- FSETID
70-
- IPC_LOCK
71-
- IPC_OWNER
72-
- KILL
73-
- LEASE
74-
- LINUX_IMMUTABLE
75-
- MAC_ADMIN
76-
- MAC_OVERRIDE
77-
- MKNOD
78-
- NET_ADMIN
79-
- NET_BIND_SERVICE
80-
- NET_BROADCAST
81-
- NET_RAW
82-
- SETFCAP
83-
- SETGID
84-
- SETPCAP
85-
- SETUID
86-
- SYS_ADMIN
87-
- SYS_CHROOT
88-
- SYS_NICE
89-
- SYS_PACCT
90-
- SYS_PTRACE
91-
- SYS_RAWIO
92-
- SYS_RESOURCE
93-
tmpfs:
94-
- /tmp
95-
- /run
96-
- /run/lock
28+
cgroup: host
9729
volumes:
98-
- '/sys/fs/cgroup:/sys/fs/cgroup:ro'
30+
- '/sys/fs/cgroup:/sys/fs/cgroup:rw'
9931
devices:
10032
- '/dev/net/tun:/dev/net/tun'
10133
sysctls:
@@ -110,45 +42,11 @@ services:
11042
container_name: compute-2
11143
hostname: compute-2
11244
image: bobuhiro11/containerized-devstack-compute-2
45+
privileged: true
11346
tty: true
114-
security_opt:
115-
- seccomp:unconfined
116-
- apparmor:unconfined
117-
cap_add:
118-
- CHOWN
119-
- DAC_OVERRIDE
120-
- DAC_READ_SEARCH
121-
- FOWNER
122-
- FSETID
123-
- IPC_LOCK
124-
- IPC_OWNER
125-
- KILL
126-
- LEASE
127-
- LINUX_IMMUTABLE
128-
- MAC_ADMIN
129-
- MAC_OVERRIDE
130-
- MKNOD
131-
- NET_ADMIN
132-
- NET_BIND_SERVICE
133-
- NET_BROADCAST
134-
- NET_RAW
135-
- SETFCAP
136-
- SETGID
137-
- SETPCAP
138-
- SETUID
139-
- SYS_ADMIN
140-
- SYS_CHROOT
141-
- SYS_NICE
142-
- SYS_PACCT
143-
- SYS_PTRACE
144-
- SYS_RAWIO
145-
- SYS_RESOURCE
146-
tmpfs:
147-
- /tmp
148-
- /run
149-
- /run/lock
47+
cgroup: host
15048
volumes:
151-
- '/sys/fs/cgroup:/sys/fs/cgroup:ro'
49+
- '/sys/fs/cgroup:/sys/fs/cgroup:rw'
15250
devices:
15351
- '/dev/net/tun:/dev/net/tun'
15452
sysctls:

0 commit comments

Comments
 (0)