mfoud444 commited on
Commit
4a655ae
·
verified ·
1 Parent(s): c59a109

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +30 -7
Dockerfile CHANGED
@@ -2,20 +2,43 @@ FROM ubuntu:22.04
2
 
3
  ENV DEBIAN_FRONTEND=noninteractive
4
 
5
- # Install prerequisites
6
  RUN apt-get update && apt-get install -y \
7
  curl \
8
  iproute2 \
9
  ca-certificates \
10
  gnupg \
11
  lsb-release \
12
- && rm -rf /var/lib/apt/lists/*
 
 
 
 
13
 
14
- # Download the installer but don't run it yet
15
- RUN curl -sSL https://dokploy.com/install.sh -o /install-dokploy.sh && \
16
- chmod +x /install-dokploy.sh
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17
 
18
  EXPOSE 3000
19
 
20
- # Command that will start Docker and then run the installer
21
- CMD ["bash", "-c", "dockerd & while ! docker info >/dev/null 2>&1; do sleep 1; done && /install-dokploy.sh && tail -f /dev/null"]
 
2
 
3
  ENV DEBIAN_FRONTEND=noninteractive
4
 
5
+ # 1. Install prerequisites and Docker
6
  RUN apt-get update && apt-get install -y \
7
  curl \
8
  iproute2 \
9
  ca-certificates \
10
  gnupg \
11
  lsb-release \
12
+ && mkdir -p /etc/apt/keyrings \
13
+ && curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg \
14
+ && echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable" > /etc/apt/sources.list.d/docker.list \
15
+ && apt-get update \
16
+ && apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
17
 
18
+ # 2. Download Dokploy installer (but don't run yet)
19
+ RUN curl -sSL https://dokploy.com/install.sh -o /install-dokploy.sh \
20
+ && chmod +x /install-dokploy.sh
21
+
22
+ # 3. Create entrypoint script
23
+ RUN echo '#!/bin/bash\n\
24
+ set -e\n\
25
+ \n\
26
+ # Start Docker daemon\n\
27
+ service docker start\n\
28
+ \n\
29
+ # Wait for Docker to be ready\n\
30
+ while ! docker info >/dev/null 2>&1; do\n\
31
+ echo "Waiting for Docker to start..."\n\
32
+ sleep 1\n\
33
+ done\n\
34
+ \n\
35
+ # Run Dokploy installation\n\
36
+ /install-dokploy.sh\n\
37
+ \n\
38
+ # Keep container running\n\
39
+ tail -f /dev/null' > /entrypoint.sh \
40
+ && chmod +x /entrypoint.sh
41
 
42
  EXPOSE 3000
43
 
44
+ ENTRYPOINT ["/entrypoint.sh"]