Nginx: Email: admin@example.com Password: changeme google auth @ /api/auth/signin: # // owner: dobromir.popov@gmail.com | Специално Свидетелстване София # // https://console.cloud.google.com/apis/credentials/oauthclient/926212607479-d3m8hm8f8esp3rf1639prskn445sa01v.apps.googleusercontent.com?project=grand-forge-108716 # to spin up devcontainer: # ensure we have docker: apt-get update && apt-get install -y docker.io docker build -t dev-next-cart-app-img .devcontainer docker run -d -v /path/to/your/project:/workspace --name dev-next-cart-app dev-next-cart-app-img docker exec -it dev-next-cart-app /bin/bash ##### ----------------- compose/deploy ----------------- ### # install docker if inside docker (vscode-server)# apt-get update && apt-get install -y docker.io # .10 > /mnt/apps/DEV/SSS/next-cart-app/next-cart-app/ #.11 > cd /mnt/storage/DEV/workspace/repos/git.d-popov.com/next-cart-app/next-cart-app # using dockerfile and image: docker build -t jwpw:latest -f _deploy/prod.Dockerfile . # or ---------------------- docker build -t jwpw:test -f _deploy/testBuild.Dockerfile . #---- or (testing 2 step docker image) docker build -t docker.d-popov.com/jwpw:test -f _deploy/testBuild.Dockerfile . docker run -p 3000:3000 docker.d-popov.com/jwpw:test docker run -it --name browse-jwse --entrypoint sh docker.d-popov.com/jwpw:test docker rm browse-jwpw --- TEST docker build -t docker.d-popov.com/jwpw:test -f _deploy/testBuild.Dockerfile . docker push docker.d-popov.com/jwpw:test --LATEST/ cd /mnt/storage/DEV/workspace/repos/git.d-popov.com/mwhitnessing docker build -t docker.d-popov.com/jwpw:latest -f _deploy/prod.Dockerfile . docker tag docker.d-popov.com/jwpw:latest docker.d-popov.com/jwpw:0.9.95 docker push docker.d-popov.com/jwpw:latest docker push docker.d-popov.com/jwpw:0.9.95 #--- docker tag jwpw:latest docker.d-popov.com/jwpw:latest docker push docker.d-popov.com/jwpw:latest # docker push registry.example.com/username/my-image:latest #docker login docker.d-popov.com # Tag the image for your local Docker registry docker tag jwpw:0.9 docker.d-popov.com/jwpw:0.9 # deploy docker pull docker.d-popov.com/jwpw:latest docker run -p local-port:container-port docker.d-popov.com/jwpw:latest # docker-compose docker-compose up --build ! docker-compose -f test.11.yml up --build # build test on .11:5002 docker-compose -f deploy.azure.yml up --build # OR git clone ------------------!!! apk add git && rm -rf /tmp/clone apk add git && git clone --depth 1 https://popov:6A5FvrV6jfF2BP@git.d-popov.com/popov/next-cart-app.git /tmp/clone && cp -Rf /tmp/clone/next-cart-app/* /app/ # if cloned # cd /tmp/clone && git pull --depth 1 cp -Rf /tmp/clone/next-cart-app/* /app/ && cd /app cp -Rf /tmp/clone/next-cart-app/* /mnt/docker_volumes/pw/app/ rm -rf /tmp/clone npm cache clean --force && rm -rf /app/node_modules /app/package-lock.json NODE_OPTIONS="--max-old-space-size=4096" npm install npm install && npm install -g dotenv-cli && npx prisma generate npm run test # OR # copy with SSH # remote: #sudo chown -R azureuser:azureuser /mnt/docker_volumes/pw/app/ # local: #rsync -avz ./node_modules/ azureuser@172.160.240.73:/mnt/docker_volumes/pw/app/node_modules/ # OR (2 cmd deploy PROD) # npm run build rsync -avz --include=".*" .next \ .env .env.production \ components \ pages \ prisma \ src \ styles \ package.json \ package-lock.json \ server.js \ azureuser@172.160.240.73:/mnt/docker_volumes/pw/app/ # or DOCKERFILE docker build -t jw-cart -f prod.Dockerfile . docker build -t jw-cart-prod -f testBuild.Dockerfile . #build npm run build #install next npm install -g next next build next start ## ------------------------------- dev -----------------------------------### #get docker logs sudo docker logs pw-nextjs-app-1 >> ./app.log # aider: export OPENAI_API_KEY=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 # personal export OPENAI_API_KEY=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 # dev-bro # -------------update PRISMA schema/sync database ------------------------ # # prisma migrate dev --create-only npx prisma generate npx prisma migrate dev --name fix_nextauth_schema --create-only >Prisma Migrate created the following migration without applying it 20231214163235_fix_nextauth_schema >You can now edit it and apply it by running "prisma migrate dev" # #production/deploy: npx prisma migrate deploy ## Reintrospect: If you have a database that's in the desired state, but your Prisma schema is out of date, you can use prisma db pull to introspect the database and update your Prisma schema to match the current state of the database. npx prisma generate # mark migration as applied: npx prisma migrate resolve --applied 20240201214719_assignment_add_repeat_frequency # update prisma package npm i prisma@latest npm i @prisma/client@latest npx prisma migrate dev --schema "mysql://cart:cart2023@192.168.0.10:3306/cart_dev" # -- does not work ########################################## # yml leave the container running: command: sh -c "npm run test; tail -f /dev/null" fix build errors: cd path\to\your\project -- rmdir /s /q node_modules del package-lock.json npm install -- Remove-Item -Recurse -Force node_modules Remove-Item package-lock.json npm install # -- mysql # fix mysql -u root -pi4966cWBtP3xJ7BLsbsgo93C8Q5262 -- mysqld_safe --skip-grant-tables & mysql -u root FLUSH PRIVILEGES; SET PASSWORD FOR 'root'@'localhost' = PASSWORD('i4966cWBtP3xJ7BLsbsgo93C8Q5262'); GRANT ALL PRIVILEGES ON jwpwsofia.* TO 'jwpwsofia'@'%' IDENTIFIED BY 'dwxhns9p9vp248V39xJyRthUsZ2gR9' WITH GRANT OPTION; GRANT ALL PRIVILEGES ON jwpwsofia.* TO 'jwpwsofia'@'172.22.0.3' IDENTIFIED BY 'dwxhns9p9vp248V39xJyRthUsZ2gR9' WITH GRANT OPTION; FLUSH PRIVILEGES; exit; #Install depcheck: npm install --save-dev depcheck npx depcheck npx depcheck --detailed #Check for Package Updates npm install -g npm-check-updates ncu ncu -u # fix (Got an error reading communication packets) ??? enable apple ID: curl https://gist.githubusercontent.com/balazsorban44/09613175e7b37ec03f676dcefb7be5eb/raw/b0d31aa0c7f58e0088fdf59ec30cad1415a3475b/apple-gen-secret.mjs -o apple-gen-secret.mjs