Cara Install Docker dengan File HTML Statis [2023]

 


Dalam dunia pengembangan web modern, Docker telah menjadi salah satu alat yang paling kuat dan populer. Dengan menggunakan Docker, Anda dapat dengan mudah menyatukan aplikasi dalam wadah independen yang ringan dan portabel, yang berjalan dengan konsisten di berbagai lingkungan. Artikel ini akan membahas langkah-langkah mendalam tentang bagaimana mengatur Docker dengan file HTML statis untuk meng-host situs web Anda dengan mudah dan efisien.

Pengenalan Docker dan Manfaatnya dalam Hosting Situs Web Statis

Docker adalah platform sumber terbuka yang memungkinkan para pengembang untuk mengembangkan, menguji, dan menjalankan aplikasi dalam wadah. Konsep ini memungkinkan aplikasi dan semua dependensinya diisolasi dari lingkungan tempat mereka berjalan. Manfaat utama Docker dalam hosting situs web statis adalah portabilitas, skalabilitas, dan efisiensi sumber daya.

Portabilitas memungkinkan Anda untuk menjalankan wadah di mana saja, baik di lingkungan pengembangan maupun produksi, dengan hasil yang konsisten. Skalabilitas memungkinkan Anda untuk dengan mudah mengelola beberapa wadah dan menyeimbangkan beban lalu lintas. Efisiensi sumber daya mengoptimalkan penggunaan server Anda karena Anda hanya menjalankan apa yang diperlukan oleh wadah.

TUTORIAL :

Apakah Anda siap meluncurkan situs web statis Anda dengan HTML, Docker, dan NginxProxyManager. Lihat ini dan lakukan sendiri dengan cukup mudah.

Dockerfile

FROM node:lts-alpine

# install simple http server for serving static content
RUN yarn global add serve

# make the 'app' folder the current working directory
WORKDIR /usr/src/website

# copy project files and folders to the current working directory (i.e. 'app' folder)
COPY . .

EXPOSE 8080
CMD [ "serve", "-p", "8080"]

docker-compose.yml

version: "3.3"

services:
  ngxinxproxymanager:
    image: "jc21/nginx-proxy-manager:latest"
    container_name: yourproject-ngxinxproxymanager
    restart: unless-stopped
    ports:
      - "80:80" # Public HTTP Port
      - "443:443" # Public HTTPS Port
      - "81:81" # Admin Web Port
      # Add any other Stream port you want to expose
      # - '21:21' # FTP
    networks:
      - yourproject-network
    environment:
      # the SQLite DB file within the container
      DB_SQLITE_FILE: "/data/database.sqlite"
      # Uncomment this if IPv6 is not enabled on your host
      # DISABLE_IPV6: 'true'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt

  website:
    build:
      context: ../website
      dockerfile: ../docker/website.Dockerfile
    container_name: yourproject-website
    restart: always
    ports:
      - "8081:8080"
    networks:
      - yourproject-network

networks:
  yourproject-network:
    driver: bridge

volumes:
  yourproject-db:
    driver: local
    driver_opts:
      type: none
      o: bind
      device: "${PWD}/db-data"

Post a Comment

Post a Comment (0)

Previous Post Next Post