Activity
- Containerize nop commerce

- Run these using commands
- create a docker compose file
- lets create nop-net bridge network
docker network create --driver bridge nop-net
- Lets create a nop-db volume
docker volume create nop-db
- Lets start by creating mysql container
docker container run --name mysql --network nop-net -d \
-e MYSQL_ROOT_PASSWORD=rootroot \
-e MYSQL_USER=nop \
-e MYSQL_PASSWORD=rootroot \
-v nop-db:/var/lib/mysql \
mysql:8
- Now build the nop image using Dockerfile
FROM mcr.microsoft.com/dotnet/sdk:7.0
LABEL author="khaja" organization="qt" project="learning"
ARG user=nopcommerce
ARG group=nopcommerce
ARG uid=1000
ARG gid=1000
ARG DOWNLOAD_URL=https://github.com/nopSolutions/nopCommerce/releases/download/release-4.60.2/nopCommerce_4.60.2_NoSource_linux_x64.zip
ARG HOME_DIR=/nop
RUN apt update && apt install unzip -y
# Create user nopcommerce
RUN groupadd -g ${gid} ${group} \
&& useradd -d "$HOME_DIR" -u ${uid} -g ${gid} -m -s /bin/bash ${user}
USER ${user}
WORKDIR ${HOME_DIR}
ADD --chown=${user}:${group} ${DOWNLOAD_URL} ${HOME_DIR}/nopCommerce_4.60.2_NoSource_linux_x64.zip
RUN unzip ${HOME_DIR}/nopCommerce_4.60.2_NoSource_linux_x64.zip && \
mkdir ${HOME_DIR}/bin && mkdir ${HOME_DIR}/logs
EXPOSE 5000
ENV ASPNETCORE_URLS="http://0.0.0.0:5000"
CMD [ "dotnet", "Nop.Web.dll"]
- Now run the nop container
docker container run --name nop --network nop-net \
-P -d nop:4.60.2
- In the install page, pass connection string
server=mysql;uid=root;pwd=rootroot;database=nop
- Doing the same as above using compose file Refer Here for the changes
Like this:
Like Loading...