This project contains the code for my personal landing page, which can be found at nnong.dev. The landing page is built using React and styled with Tailwind CSS.
- For Docker setup: Docker and Docker Compose installed. Download Docker here.
- For local setup: Node.js and npm. If you do not have Node.js installed, you can download it here.
- The project will also require git and a valid GitHub account to run. You can download git here.
Docker provides a simple, consistent environment for running the application without needing to install Node.js locally.
-
Clone the repository
git clone https://github.com/Nguyen-HanhNong/landing-page.git cd landing-page -
Start the application with Docker Compose
docker-compose up
-
Open the project in your browser
http://localhost:3000/
The application will automatically reload when you make changes to the source code.
- Start the application:
docker-compose up - Start in detached mode (background):
docker-compose up -d - Stop the application:
docker-compose down - View logs:
docker-compose logs -f - Rebuild containers (after dependency changes):
docker-compose up --build - Access container shell:
docker-compose exec app sh
If you prefer using Docker directly without Docker Compose:
-
Build the Docker image
docker build -t landing-page . -
Run the container
docker run -p 3000:3000 -v $(pwd):/app -v /app/node_modules landing-page
If you prefer to run the application without Docker:
-
Clone the repository
git clone https://github.com/Nguyen-HanhNong/landing-page.git cd landing-page -
Install NPM packages
npm install
-
Run the project
npm run start
-
Open the project in your browser
http://localhost:3000/
The Docker setup is only for local development. GitHub Pages deployment remains unchanged and works exactly as before:
-
Build the project
npm run build
-
Deploy to GitHub Pages
npm run deploy
Or use the custom deploy script:
npm run custom-deployThe Docker files (Dockerfile, docker-compose.yml, .dockerignore) are ignored during GitHub Pages deployment and will not interfere with the deployment process.
Distributed under the GNU General Public License v3.0. See LICENSE for more information.
