Added workflow and dockerfile
All checks were successful
Build and Push Docker Image / build (push) Successful in 57s
34
.gitea/workflows/docker.yml
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
name: Build and Push Docker Image
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ main ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ main ]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest # Use Ubuntu as the runner environment
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v3 # Checkout the repository's code
|
||||||
|
|
||||||
|
- name: Log in to Docker Hub
|
||||||
|
uses: docker/login-action@v2
|
||||||
|
with:
|
||||||
|
username: ${{ secrets.DOCKER_USERNAME }} # Docker Hub username from GitHub Secrets
|
||||||
|
password: ${{ secrets.DOCKER_PASSWORD }} # Docker Hub password from GitHub Secrets
|
||||||
|
|
||||||
|
- name: Build Docker image
|
||||||
|
run: |
|
||||||
|
# Build the Docker image from the Dockerfile in the repo
|
||||||
|
docker build -t ${{ secrets.DOCKER_USERNAME }}/divine-couture.co.uk:latest .
|
||||||
|
|
||||||
|
- name: Push Docker image to Docker Hub
|
||||||
|
run: |
|
||||||
|
# Push the Docker image to Docker Hub
|
||||||
|
docker push ${{ secrets.DOCKER_USERNAME }}/divine-couture.co.uk:latest
|
||||||
|
|
||||||
|
- name: Logout from Docker Hub
|
||||||
|
run: docker logout
|
18
Dockerfile
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
# Use the official Nginx image from Docker Hub
|
||||||
|
FROM nginx:alpine
|
||||||
|
|
||||||
|
# Set the working directory in the container
|
||||||
|
WORKDIR /usr/share/nginx/html
|
||||||
|
|
||||||
|
# Remove the default Nginx welcome page
|
||||||
|
RUN rm -rf /usr/share/nginx/html/*
|
||||||
|
|
||||||
|
# Copy your static website files (e.g., HTML, CSS, JS) into the container
|
||||||
|
# Assuming the website files are in the `./website` directory on your host machine
|
||||||
|
COPY ./ /usr/share/nginx/html
|
||||||
|
|
||||||
|
# Expose port 80 for the web server
|
||||||
|
EXPOSE 80
|
||||||
|
|
||||||
|
# Start Nginx in the foreground when the container runs
|
||||||
|
CMD ["nginx", "-g", "daemon off;"]
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 1016 B After Width: | Height: | Size: 1016 B |
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 815 B After Width: | Height: | Size: 815 B |
Before Width: | Height: | Size: 684 B After Width: | Height: | Size: 684 B |
36
index.html
@ -35,6 +35,9 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.video-container {
|
.video-container {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
@ -42,20 +45,22 @@
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
z-index: 9999;
|
z-index: 9999;
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
opacity: 0.95;
|
||||||
}
|
}
|
||||||
|
|
||||||
.video-container video {
|
.video-container video {
|
||||||
width: 100%;
|
width: 50%;
|
||||||
height: 100%;
|
height: 50%;
|
||||||
object-fit: cover;
|
object-fit: cover;
|
||||||
}
|
}
|
||||||
|
|
||||||
.video-container.fade-out {
|
.video-container.fade-out {
|
||||||
animation: fadeOut 500ms forwards;
|
animation: fadeOut 1000ms forwards;
|
||||||
}
|
}
|
||||||
|
|
||||||
@keyframes fadeOut {
|
@keyframes fadeOut {
|
||||||
0% { opacity: 1; }
|
0% { opacity: 0.95; }
|
||||||
100% { opacity: 0; visibility: hidden; }
|
100% { opacity: 0; visibility: hidden; }
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -149,6 +154,13 @@
|
|||||||
display: block; /* Show mobile element on small screens */
|
display: block; /* Show mobile element on small screens */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.video-container video {
|
||||||
|
width: 70%;
|
||||||
|
height: 70%;
|
||||||
|
object-fit: cover;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
.contact {
|
.contact {
|
||||||
position: relative;
|
position: relative;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
@ -168,7 +180,7 @@
|
|||||||
<div class="desktop-element">
|
<div class="desktop-element">
|
||||||
<div class="video-container" id="videoContainerDesk">
|
<div class="video-container" id="videoContainerDesk">
|
||||||
<video id="introVideoDesk" autoplay muted playsinline>
|
<video id="introVideoDesk" autoplay muted playsinline>
|
||||||
<source src="Full HD.mp4" type="video/mp4">
|
<source src="assets/vid/Full HD.mp4" type="video/mp4">
|
||||||
Your browser does not support the video tag.
|
Your browser does not support the video tag.
|
||||||
</video>
|
</video>
|
||||||
</div>
|
</div>
|
||||||
@ -177,7 +189,7 @@
|
|||||||
<div class="mobile-element">
|
<div class="mobile-element">
|
||||||
<div class="video-container" id="videoContainerMob">
|
<div class="video-container" id="videoContainerMob">
|
||||||
<video id="introVideoMob" autoplay muted playsinline>
|
<video id="introVideoMob" autoplay muted playsinline>
|
||||||
<source src="Full HD vertical.mp4" type="video/mp4">
|
<source src="assets/vid/Full HD vertical.mp4" type="video/mp4">
|
||||||
Your browser does not support the video tag.
|
Your browser does not support the video tag.
|
||||||
</video>
|
</video>
|
||||||
</div>
|
</div>
|
||||||
@ -186,16 +198,16 @@
|
|||||||
<!-- Main Content -->
|
<!-- Main Content -->
|
||||||
<div class="container" id="mainContent">
|
<div class="container" id="mainContent">
|
||||||
<div class="logo">
|
<div class="logo">
|
||||||
<img src="divine couture-no background.svg" alt="Company Logo">
|
<img src="assets/img/divine-couture.svg" alt="Company Logo">
|
||||||
</div>
|
</div>
|
||||||
<div class="accent-line"></div>
|
<div class="accent-line"></div>
|
||||||
<p>Our website is on its way. Stay tuned for something special as we look to deliver style, for every occasion. We can't wait to share more.</p>
|
<p>Our website is on its way. Stay tuned for something special as we look to deliver style, for every occasion. We can't wait to share more.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="contact">
|
<div class="contact">
|
||||||
<div><img src="email-icon.png" alt="Email Icon"><a href="mailto:contact@divine-couture.co.uk">contact@divine-couture.co.uk</a></div>
|
<div><img src="assets/img/email-icon.png" alt="Email Icon"><a href="mailto:contact@divine-couture.co.uk">contact@divine-couture.co.uk</a></div>
|
||||||
<div><img src="phone-icon.png" alt="Phone Icon"><a href="tel:+447713133027">+44 (0) 77 13 13 30 27</a></div>
|
<div><img src="assets/img/phone-icon.png" alt="Phone Icon"><a href="tel:+447713133027">+44 (0) 77 13 13 30 27</a></div>
|
||||||
<div><img src="tiktok-icon.png" alt="TikTok Icon"><a href="https://www.tiktok.com/@divinecoutureee">divinecoutureee</a></div>
|
<div><img src="assets/img/tiktok-icon.png" alt="TikTok Icon"><a href="https://www.tiktok.com/@divinecoutureee">divinecoutureee</a></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
@ -207,7 +219,7 @@
|
|||||||
videoContainerDesk.classList.add('fade-out');
|
videoContainerDesk.classList.add('fade-out');
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
videoContainerDesk.style.display = 'none';
|
videoContainerDesk.style.display = 'none';
|
||||||
}, 500); // Wait for the fade-out animation to finish
|
}, 1000); // Wait for the fade-out animation to finish
|
||||||
});
|
});
|
||||||
|
|
||||||
const videoMob = document.getElementById('introVideoMob');
|
const videoMob = document.getElementById('introVideoMob');
|
||||||
@ -217,7 +229,7 @@
|
|||||||
videoContainerMob.classList.add('fade-out');
|
videoContainerMob.classList.add('fade-out');
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
videoContainerMob.style.display = 'none';
|
videoContainerMob.style.display = 'none';
|
||||||
}, 500); // Wait for the fade-out animation to finish
|
}, 1000); // Wait for the fade-out animation to finish
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|