You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

40 lines
1.5 KiB

4 years ago
  1. # Setup dev certificates deploying to Docker Desktop
  2. 1. Create a self-signed certificate
  3. 2. Install certificates
  4. 3. Configure the services
  5. ## 1 - Create the self-signed certificate (`.pem + .key`) and its `.pfx` file
  6. **From WSL**, run the `create-docker-certificate.sh` script with a strong password for the certificate.
  7. ```bash
  8. ./create-docker-certificate.sh "secure-COMPLEX-and-SECRET-password"
  9. ```
  10. The script creates a certificate for both `host.docker.internal` and `localhost`.
  11. ### 2 - Install the certificates
  12. Run the `install-docker-certificate.ps1` with the same password you used above:
  13. ```powershell
  14. .\install-docker-certificate.ps1 "secure-COMPLEX-and-SECRET-password"
  15. ```
  16. The above script:
  17. 1. Imports the certificate in the current user root CA store.
  18. 2. Copies the certificate files to the `%USERPROFILE%\.aspnet\https` folder. Servers will serve the certificate from this folder.
  19. 3. Copies the `.pem` file as `.crt` to the src\certificates folder to add it as a root CA when building the images for some services.
  20. ### 3 - Configure some services to serve the certificates
  21. 1. Copy the `src\docker-compose.certificates.sample.yml` file as `src\docker-compose.certificates.yml`
  22. 2. Configure the password you assigned to the certificates in the settings `ASPNETCORE_Kestrel__Certificates__Default__Password`
  23. > **IMPORTANT**
  24. >
  25. > The `src\docker-compose.certificates.yaml` file is .gitignore'd to avoid pushing it to the repo with the certificate password.
  26. >
  27. > To avoid security risks, **DON'T FORCE PUSH the file**.