Skip to content

Commit fb19ee5

Browse files
Merge pull request #598 from dappnode/3alpha/migrate-compose
Migrate from docker-compose to docker compose
2 parents 8b02817 + 71cc7bc commit fb19ee5

7 files changed

+28
-35
lines changed

.dappnode_profile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,11 @@ DNCORE_YMLS=$(find $DAPPNODE_CORE_DIR -name "docker-compose-*.yml" -printf "-f %
1818
DNCORE_YMLS_ARRAY=($(find /usr/src/dappnode/DNCORE -name "docker-compose-*.yml" | sort))
1919

2020
# Returns docker core containers status
21-
alias dappnode_status='docker-compose $DNCORE_YMLS ps'
21+
alias dappnode_status='docker compose $DNCORE_YMLS ps'
2222
# Stop docker core containers
23-
alias dappnode_stop='docker-compose $DNCORE_YMLS stop && docker stop $(docker container ls -a -q -f name=DAppNode*)'
23+
alias dappnode_stop='docker compose $DNCORE_YMLS stop && docker stop $(docker container ls -a -q -f name=DAppNode*)'
2424
# Start docker core containers
25-
alias dappnode_start='docker-compose $DNCORE_YMLS up -d && docker start $(docker container ls -a -q -f name=DAppNode*)'
25+
alias dappnode_start='docker compose $DNCORE_YMLS up -d && docker start $(docker container ls -a -q -f name=DAppNode*)'
2626
# Return open-vpn credentials from a specific user. e.g: dappnode_get dappnode_admin
2727
alias dappnode_openvpn_get='docker exec -i DAppNodeCore-vpn.dnp.dappnode.eth vpncli get'
2828
# Return open-vpn admin credentials

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,8 +136,8 @@ Install DAppNode on your host machine by burning DAppNode ISO to a DVD or creati
136136
```bash
137137
git clone https://github.com/dappnode/DAppNode.git
138138
cd DAppNode
139-
docker-compose build
140-
docker-compose up
139+
docker compose build
140+
docker compose up
141141
```
142142

143143
DAppNode iso will be generated inside images folder, to verify it:

iso/scripts/generate_dappnode_iso_debian.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
#!/bin/bash
22
set -e
33

4-
# Source = https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-12.2.0-amd64-netinst.iso
5-
ISO_NAME=debian-12.4.0-amd64-netinst.iso
4+
# Source = https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-12.5.0-amd64-netinst.iso
5+
ISO_NAME=debian-12.5.0-amd64-netinst.iso
66
ISO_PATH="/images/${ISO_NAME}"
77
ISO_URL=https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/
8-
SHASUM="64d727dd5785ae5fcfd3ae8ffbede5f40cca96f1580aaa2820e8b99dae989d94 ${ISO_PATH}"
8+
SHASUM="013f5b44670d81280b5b1bc02455842b250df2f0c6763398feb69af1a805a14f ${ISO_PATH}"
99

1010
echo "Downloading debian ISO image: ${ISO_NAME}..."
1111
if [ ! -f ${ISO_PATH} ]; then

iso/scripts/generate_docker_images.sh

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,42 +12,42 @@ echo "Downloading source code & building DNP_WIREGUARD..."
1212
curl -LJO https://github.com/dappnode/DNP_WIREGUARD/archive/refs/tags/"v${WIREGUARD_VERSION}.tar.gz" || { echo "Failed to download DNP_WIREGUARD"; exit 1; }
1313
mkdir DNP_WIREGUARD
1414
tar -xzf "DNP_WIREGUARD-${WIREGUARD_VERSION}.tar.gz" -C ./DNP_WIREGUARD --strip-components=1 || { echo "Failed to extract DNP_WIREGUARD"; exit 1; }
15-
docker-compose -f ./DNP_WIREGUARD/docker-compose.yml build || { echo "Failed to build DNP_WIREGUARD"; exit 1; }
15+
docker compose -f ./DNP_WIREGUARD/docker-compose.yml build || { echo "Failed to build DNP_WIREGUARD"; exit 1; }
1616
docker save wireguard.dnp.dappnode.eth:"${WIREGUARD_VERSION}" | xz -e9vT0 >/images/wireguard.dnp.dappnode.eth_"${WIREGUARD_VERSION}"_linux-amd64.txz || { echo "Failed to save DNP_WIREGUARD"; exit 1; }
1717

1818
echo "Downloading source code & building DNP_HTTPS..."
1919
curl -LJO https://github.com/dappnode/DNP_HTTPS/archive/refs/tags/"v${HTTPS_VERSION}.tar.gz" || { echo "Failed to download DNP_HTTPS"; exit 1; }
2020
mkdir DNP_HTTPS
2121
tar -xzf "DNP_HTTPS-${HTTPS_VERSION}.tar.gz" -C ./DNP_HTTPS --strip-components=1 || { echo "Failed to extract DNP_HTTPS"; exit 1; }
22-
docker-compose -f ./DNP_HTTPS/docker-compose.yml build || { echo "Failed to build DNP_HTTPS"; exit 1; }
22+
docker compose -f ./DNP_HTTPS/docker-compose.yml build || { echo "Failed to build DNP_HTTPS"; exit 1; }
2323
docker save https.dnp.dappnode.eth: "${HTTPS_VERSION}" | xz -e9vT0 >/images/https.dnp.dappnode.eth_"${HTTPS_VERSION}"_linux-amd64.txz || { echo "Failed to save DNP_HTTPS"; exit 1; }
2424

2525
echo "Downloading source code & building DNP_IPFS..."
2626
curl -LJO https://github.com/dappnode/DNP_IPFS/archive/refs/tags/"v${IPFS_VERSION}.tar.gz" || { echo "Failed to download DNP_IPFS"; exit 1; }
2727
mkdir DNP_IPFS
2828
tar -xzf "DNP_IPFS-${IPFS_VERSION}.tar.gz" -C ./DNP_IPFS --strip-components=1 || { echo "Failed to extract DNP_IPFS"; exit 1; }
29-
docker-compose -f ./DNP_IPFS/docker-compose.yml build || { echo "Failed to build DNP_IPFS"; exit 1; }
29+
docker compose -f ./DNP_IPFS/docker-compose.yml build || { echo "Failed to build DNP_IPFS"; exit 1; }
3030
docker save ipfs.dnp.dappnode.eth:"${IPFS_VERSION}" | xz -e9vT0 >/images/ipfs.dnp.dappnode.eth_"${IPFS_VERSION}"_linux-amd64.txz || { echo "Failed to save DNP_IPFS"; exit 1; }
3131

3232
echo "Downloading source code & building DNP_BIND..."
3333
curl -LJO https://github.com/dappnode/DNP_BIND/archive/refs/tags/"v${BIND_VERSION}.tar.gz" || { echo "Failed to download DNP_BIND"; exit 1; }
3434
mkdir DNP_BIND
3535
tar -xzf "DNP_BIND-${BIND_VERSION}.tar.gz" -C ./DNP_BIND --strip-components=1 || { echo "Failed to extract DNP_BIND"; exit 1; }
36-
docker-compose -f ./DNP_BIND/docker-compose.yml build || { echo "Failed to build DNP_BIND"; exit 1; }
36+
docker compose -f ./DNP_BIND/docker-compose.yml build || { echo "Failed to build DNP_BIND"; exit 1; }
3737
docker save bind.dnp.dappnode.eth:"${BIND_VERSION}" | xz -e9vT0 >/images/bind.dnp.dappnode.eth_"${BIND_VERSION}"_linux-amd64.txz || { echo "Failed to save DNP_BIND"; exit 1; }
3838

3939
echo "Downloading source code & building DNP_DAPPMANAGER..."
4040
curl -LJO https://github.com/dappnode/DNP_DAPPMANAGER/archive/refs/tags/"v${DAPPMANAGER_VERSION}.tar.gz" || { echo "Failed to download DNP_DAPPMANAGER"; exit 1; }
4141
mkdir DNP_DAPPMANAGER
4242
tar -xzf "DNP_DAPPMANAGER-${DAPPMANAGER_VERSION}.tar.gz" -C ./DNP_DAPPMANAGER --strip-components=1 || { echo "Failed to extract DNP_DAPPMANAGER"; exit 1; }
43-
docker-compose -f ./DNP_DAPPMANAGER/docker-compose.yml build || { echo "Failed to build DNP_DAPPMANAGER"; exit 1; }
43+
docker compose -f ./DNP_DAPPMANAGER/docker-compose.yml build || { echo "Failed to build DNP_DAPPMANAGER"; exit 1; }
4444
docker save dappmanager.dnp.dappnode.eth:"${DAPPMANAGER_VERSION}" | xz -e9vT0 >/images/dappmanager.dnp.dappnode.eth_"${DAPPMANAGER_VERSION}"_linux-amd64.txz || { echo "Failed to save DNP_DAPPMANAGER"; exit 1; }
4545

4646
echo "Downloading source code & building DNP_WIFI..."
4747
curl -LJO https://github.com/dappnode/DNP_WIFI/archive/refs/tags/"v${WIFI_VERSION}.tar.gz" || { echo "Failed to download DNP_WIFI"; exit 1; }
4848
mkdir DNP_WIFI
4949
tar -xzf "DNP_WIFI-${WIFI_VERSION}.tar.gz" -C ./DNP_WIFI --strip-components=1 || { echo "Failed to extract DNP_WIFI"; exit 1; }
50-
docker-compose -f ./DNP_WIFI/docker-compose.yml build || { echo "Failed to build DNP_WIFI"; exit 1; }
50+
docker compose -f ./DNP_WIFI/docker-compose.yml build || { echo "Failed to build DNP_WIFI"; exit 1; }
5151
docker save wifi.dnp.dappnode.eth:"${WIFI_VERSION}" | xz -e9vT0 >/images/wifi.dnp.dappnode.eth_"${WIFI_VERSION}"_linux-amd64.txz || { echo "Failed to save DNP_WIFI"; exit 1; }
5252

5353
echo "Coping dappnode_all_docker_images_linux-amd64.txz to dappnode dir..."

scripts/dappnode_install.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ dappnode_core_build() {
146146
# Change version in YAML to the custom one
147147
DOCKER_VER=$(echo "${!ver##*:}" | sed 's/\//_/g')
148148
sed -i "s~^\(\s*image\s*:\s*\).*~\1${comp,,}.dnp.dappnode.eth:${DOCKER_VER}~" DNP_"${comp}"/docker-compose.yml
149-
docker-compose -f ./DNP_"${comp}"/docker-compose.yml build
149+
docker compose -f ./DNP_"${comp}"/docker-compose.yml build
150150
cp ./DNP_"${comp}"/docker-compose.yml "${DAPPNODE_CORE_DIR}"/docker-compose-"${comp,,}".yml
151151
cp ./DNP_"${comp}"/dappnode_package.json "${DAPPNODE_CORE_DIR}"/dappnode_package-"${comp,,}".json
152152
rm -r ./DNP_"${comp}"
@@ -225,7 +225,7 @@ dappnode_start() {
225225
# Execute `compose-up` independently
226226
# To execute `compose-up` against more than 1 compose, composes files must share compose file version (e.g 3.5)
227227
for comp in "${DNCORE_YMLS_ARRAY[@]}"; do
228-
docker-compose -f "$comp" up -d 2>&1 | tee -a $LOGFILE
228+
docker compose -f "$comp" up -d 2>&1 | tee -a $LOGFILE
229229
echo "${comp} started" 2>&1 | tee -a $LOGFILE
230230
done
231231
echo -e "\e[32mDAppNode started\e[0m" 2>&1 | tee -a $LOGFILE

scripts/dappnode_install_pre.sh

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ add_docker_repo() {
3434
# DOCKER INSTALLATION
3535
install_docker() {
3636
apt-get update -y
37-
apt-get install -y docker-ce docker-ce-cli containerd.io | tee -a $LOG_FILE
37+
apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin | tee -a $LOG_FILE
3838

3939
# Ensure xz is installed
4040
[ -f "/usr/bin/xz" ] || ( apt-get install -y xz-utils)
@@ -54,20 +54,13 @@ install_docker() {
5454
fi
5555
}
5656

57-
# DOCKER COMPOSE INSTALLATION
58-
install_docker_compose() {
59-
apt-get install -y docker-compose | tee -a $LOG_FILE
60-
61-
# Disable check if ISO installation since it is not possible to check in this way
62-
if [ "$ISO_INSTALLATION" = "false" ]; then
63-
# Validate the installation of docker-compose
64-
if docker-compose -v; then
65-
echo -e "\e[32m \n\n Verified docker-compose installation \n\n \e[0m" 2>&1 | tee -a $LOG_FILE
66-
else
67-
echo -e "\e[31m \n\n ERROR: docker-compose is not installed \n\n Please re-install it \n\n \e[0m" 2>&1 | tee -a $LOG_FILE
68-
exit 1
69-
fi
70-
fi
57+
# DOCKER-COMPOSE FOR LEGACY SCRIPTS, SHOULD BE REMOVED EVENTUALLY
58+
alias_docker_compose() {
59+
cat > /usr/local/bin/docker-compose<<EOL
60+
#!/bin/bash
61+
docker compose "\$@"
62+
EOL
63+
chmod +x /usr/local/bin/docker-compose
7164
}
7265

7366
# WIREGUARD INSTALLATION
@@ -145,9 +138,9 @@ fi
145138

146139
# Only install docker-compose if needed
147140
if docker-compose -v >/dev/null 2>&1; then
148-
echo -e "\e[32m \n\n docker-compose is already installed \n\n \e[0m" 2>&1 | tee -a $LOG_FILE
141+
echo -e "\e[32m \n\n docker-compose is already aliased \n\n \e[0m" 2>&1 | tee -a $LOG_FILE
149142
else
150-
install_docker_compose 2>&1 | tee -a $LOG_FILE
143+
alias_docker_compose 2>&1 | tee -a $LOG_FILE
151144
fi
152145

153146
# Only install wireguard-dkms if needed

scripts/dappnode_test_install.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ else
3636
error_exit
3737
fi
3838

39-
if docker-compose -v >/dev/null 2>&1; then
40-
echo -e "\e[32m docker-compose installed ok\e[0m"
39+
if docker compose -v >/dev/null 2>&1; then
40+
echo -e "\e[32m docker compose installed ok\e[0m"
4141
else
4242
error_exit
4343
fi

0 commit comments

Comments
 (0)