-
Notifications
You must be signed in to change notification settings - Fork 28
Server setup instructions do not appear to work #55
Description
Unless I have misunderstood something these steps do not work. Running Windows Server Core 2019, Docker Enterprise 19.03.2
Copy server* files and folder structure
Navigate to folder above "server". Run
docker "build --tag octopusdeploy/octopusdeploy-prerelease:$OctopusVersion --build-arg OctopusVersion=$OctopusVersion --file Server\Dockerfile ."
Result :
docker: 'build --tag octopusdeploy/octopusdeploy-prerelease:$OctopusVersion --build-arg OctopusVersion=$OctopusVersion --file Server\Dockerfile .' is not a docker command.
See 'docker --help'
Change command line to:
docker build --tag octopusdeploy/octopusdeploy-prerelease:$OctopusVersion --build-arg OctopusVersion=$OctopusVersion --file Server\Dockerfile .
Result is:
invalid argument "octopusdeploy/octopusdeploy-prerelease:$OctopusVersion" for "-t, --tag" flag: invalid reference format
See 'docker build --help'.
Change command line to:
docker build --tag octopusdeploy --build-arg OctopusVersion=$OctopusVersion --file Server\Dockerfile .
This will start the build content and pull down the images and then appear to hang on the Healthcheck step.
According to instructions, the dockerfile is meant to be run from a root folder which then points to /server/healthcheck-server.ps1, except that this script is not at this location... it's at /server/scripts.
How should the .env file be used? This isn't in the build instructions so I really don't know... The instructions for building a server image need to be clearer.
Finally, I hacked the dockerfile paths, changed the base image to work on Server Core 2019 but then step 13 failed with:
Step 13/14 : RUN powershell -File ./Server/build.ps1
---> Running in 2f56622e5e9c
[2019-09-20T21:03:36] ===============================================
[2019-09-20T21:03:38] Installing version '$OctopusVersion'
[2019-09-20T21:03:38] ===============================================
[2019-09-20T21:03:38] Creating installation folder at 'C:\Install\' ...
[2019-09-20T21:03:39] Downloading installer 'https://s3-ap-southeast-1.amazonaws.com/octopus-testing/server/Octopus.$OctopusVersion-x64.msi' to 'C:\Install\Octopus.$OctopusVersion-x64.msi' ...
Failed to add Tls12 to the list of security protocols
System.Management.Automation.SetValueInvocationException: Exception setting "SecurityProtocol": "The requested security protocol is not supported." ---> System.NotSupportedException: The requested security protocol is not supported.
at System.Net.ServicePointManager.ValidateSecurityProtocol(SecurityProtocolType value)
at CallSite.Target(Closure , CallSite , Type , Object )
--- End of inner exception stack trace ---
at System.Management.Automation.ExceptionHandlingOps.CheckActionPreference(FunctionContext funcContext, Exception exception)
at System.Management.Automation.Interpreter.ActionCallInstruction`2.Run(InterpretedFrame frame)
at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
[2019-09-20T21:03:41] Exception calling "DownloadFile" with "2" argument(s): "The remote server returned an error: (403) Forbidden."
The command 'cmd /S /C powershell -File ./Server/build.ps1' returned a non-zero code: 2
I think this may be a Windows Server Core issue, as eventually I ignored trying to set an environment variable with SETX and just explicitly stated the version. This then still reported the above error but appeared to download the msi and run.
I'm not sure of the audience for these instructions - but more clarity on the steps needed to build our own image of a different base would be helpful.