Domino v12 One Touch Setup – part 2
In my previous post I explained how to add an additional server on Docker using environment variables.
In this post I will use the other method, using a JSON file, to create a new first server.
A word of caution – this is all based on the current beta drop and I found that the instructions provided are not exactly perfect. I have reported my findings to HCL and they will make both the instructions and the setup better.
So use what I say just if you want to test V12 One Touch Setup now, for the future things will change for the better and I will post about the new stuff.
First step is to create a volume to store the Domino data directory
docker volume create notesdata
Now run the following Docker command. This command creates a Docker container without yet configuring Domino by making the container entry point a bash shell.
docker run -it -v notesdata:/local/notesdata --name adminserver --entrypoint /bin/bash -p 8585:8585 -p 1352:1352 -p 443:443 domino-docker:V1200_12022020prod
You will be in the shell in the /local/notesdata directory
Open another terminal.
Create a JSON file with all the settings needed for a first server setup, here is the one I used as an example called setup.json
{
"serverSetup": {
"server": {
"type": "first",
"name": "demo",
"domainName": "ELD",
"title": "Eld Demo Server",
"password": null,
"minPasswordLength": 0
},
"network": {
"hostName": "domino.eld.it",
"enablePortEncryption": true,
"enablePortCompression": true
},
"org": {
"countryCode": null,
"orgName": "ELD",
"certifierPassword": "password",
"orgUnitName": null,
"orgUnitPassword": null
},
"admin": {
"firstName": "Roberto",
"middleName": null,
"lastName": "Boccadoro",
"password": "password",
"IDFilePath": "/local/notesdata/rob.id"
},
"notesINI": {
"ServerTasks": null,
"LOG_REPLICATION": "1",
"LOG_SESSIONS": "1"
},
"security": {
"ACL": {
"prohibitAnonymousAccess": true,
"addLocalDomainAdmins": true
}
},
"autoRegister": {
"count": 7,
"IDPath": "/local/notesdata/ids",
"pattern": "server#"
}
},
"IDVault": {
"name": "O=ELDVault",
"description": "ELD Vault",
"IDFile": "ELDVault.id",
"IDPassword": "VaultPassword",
"path": "IBM_ID_VAULT/ELDVault.nsf",
"passwordReset": {
"helpText": "Call so and so for help resetting password"
},
"securitySettingsPolicy": {
"name": "ELD Vault Security Settings Policy",
"description": "ELD Vault Security Settings"
},
"masterPolicy": {
"description": "ELD Vault Master Policy Description"
}
}
}
This is more then the minimum needed, for example I set up ID vault, which is not mandatory. The minimum needed parameters are listed in a example file you can find here
Copy the JSON file from the machine you created it into the container running this command
docker cp setup.json 737ead470a66:/local/notesdata
Where 737ead470a66 is the container ID, which you can get running the command
docker container ls -a
From inside the shell runs those two commands
export SetupAutoConfigure=1
export SetupAutoConfigureParams=setup.json
Now run the command
/local/start.sh --autoconfigure
After a while you should see your server running and have the console inside the terminal.