+ All Categories
Home > Documents > GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy...

GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy...

Date post: 03-Jul-2020
Category:
Upload: others
View: 3 times
Download: 0 times
Share this document with a friend
60
Imagr GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16
Transcript
Page 1: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

ImagrGRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16

Page 2: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!
Page 3: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!
Page 4: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Some say…

Page 5: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Imaging is dead

Page 6: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Requirements

• USB Drive or download of work files: http://bit.ly/imagrlab

• OS X Installer: Matching the version of OS X your Mac is running (10.10 Minimum)

• VMware Fusion Professional: A trial version is fine. Must be Professional version to NetBoot.

Page 7: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Agenda

Page 8: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Long Boring Prep

Page 9: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

• Creates a Never Booted Image.

• Really, really simple.

• I mean really simple..

AutoDMG

Page 10: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!
Page 11: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!
Page 12: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

• Text Editor.

• Copy everything to your home directory.

• Install Docker Toolbox.

Last prepHonest!

Page 13: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Start Docker Machine

$ cd somewhere/Imagr_Lab $ Scripts/machine.sh

Page 14: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

$ docker-machine env vmwaredocker $ eval "$(docker-machine env vmwaredocker)"

Start Docker Machine

Page 15: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

$ cd somewhere/Imagr_Lab $ Scripts/import.sh

Start Docker Machine

Page 16: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

What is Imagr?

Page 17: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Imagr is an open source deployment tool for Macs

Page 18: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Uses a simple web server

Page 19: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

No OS X Server required

Page 20: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

No OS X “Server” required

Page 21: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Open Source

Page 22: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!
Page 23: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Can replace DeployStudio for most people

Page 24: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Growing community

Page 25: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Configured with a plist

Page 26: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Scripts/genpassword.sh

#!/bin/bash

python -c 'import hashlib; print hashlib.sha512("YOURPASSWORDHERE").hexdigest()'

Page 27: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Generating the password

$ cd somewhere/Imagr_Lab $ Scripts/genpassword.sh

Page 28: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Data/web_root/imagr_config.plist

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>password</key> <string>b109f3bbbc244eb82441917ed06d618b9008dd09b3befd1b5e07394c706a8bb980b1d7785e5976ec049b46df5f1326af5a2ea6d103fd07c95385ffab0cacbc86</string> <key>workflows</key> <array> <dict> <key>name</key> <string>Imagr Workflow</string> <key>description</key> <string>A demo workflow made in the Imagr Lab session.</string> <key>components</key> <array>

</array> </dict> </array> </dict> </plist>

Page 29: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

imagr_config.plist

Page 30: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Workflows

Page 31: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Components

Page 32: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

imagr_config.plist

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>password</key> <string>b109f3bbbc244eb82441917ed06d618b9008dd09b3befd1b5e07394c706a8bb980b1d7785e59 76ec049b46df5f1326af5a2ea6d103fd07c95385ffab0cacbc86</string> <key>workflows</key> <array> <dict> <key>name</key> <string>Imagr Workflow</string> <key>description</key> <string>A demo workflow made in the Imagr Lab session.</string> <key>components</key> <array>

</array> </dict> </array> </dict> </plist>

Page 33: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

imagr_config.plist<dict> <key>type</key> <string>image</string> <key>url</key> <string>http://YOURIPADDRESS/your-autodmg.dmg</string> </dict>

Page 34: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

imagr_config.plist

<dict> <key>type</key> <string>package</string> <key>url</key> <string>http://YOURIPADDRESS/packages/clearReg.pkg</string> <key>first_boot</key> <false/> </dict> <dict> <key>type</key> <string>package</string> <key>url</key> <string>http://YOURIPADDRESS/packages/adminUser.pkg</string> </dict>

Page 35: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

imagr_config.plist<dict> <key>type</key> <string>computer_name</string> </dict>

Page 36: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

imagr_config.plist

<dict> <key>type</key> <string>script</string> <key>content</key> <string>#!/bin/bash /usr/bin/csrutil netboot add 10.10.10.10 /usr/bin/csrutil netboot add 10.10.10.11 </string> <key>first_boot</key> <false/> </dict> <dict> <key>type</key> <string>script</string> <key>content</key> <string>#!/bin/bash /usr/sbin/systemsetup -f -setremotelogin on</string> </dict>

Page 37: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

That’s it!

Page 38: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

• Apps/Imagr.dmg

• /Volumes/Imagr/Tools: Copy to your internal drive

Validating the plist

Page 39: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Validating the plist

$ cd /SOMEWHERE/Tools $ ./validateplist http://YOURIPADDRESS/imagr_config.plist

Page 40: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Has AutoDMG finished?

Page 41: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

The NBI

Page 42: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Tools/config.mkURL=http://YOURIPADDRESS/imagr_config.plist DMGPATH=/SOMEWHERE/Imagr_Lab/Apps/Imagr.dmg OUTPUT=/SOMEWHERE/Imagr_Lab/Data/web_root/Imagr.nbi VALIDATE=false

Page 43: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Build your NBI $ make update

Page 44: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Copy AutoDMG image to Data/web_root

Page 45: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Docker

Page 46: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Start your containers

$ cd somewhere/Imagr_Lab $ Scripts/start-docker.sh

Page 47: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Start your containers $ docker logs bsdpy

Page 48: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Time to NetBoot

Page 49: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!
Page 50: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!
Page 51: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!
Page 52: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!
Page 53: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!
Page 54: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!
Page 55: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!
Page 56: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

What’s happening? $ docker logs bsdpy

Page 57: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!
Page 58: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Questions?

Page 59: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

• Twitter: @grahamgilbert

• Github: @grahamgilbert

• Web: grahamgilbert.com

• Imagr: github.com/grahamgilbert/imagr

Say hi!

Page 60: GRAHAM GILBERT / MACDEVOPS:YVR / 21.06.16 Imagr · 2020-06-01 · •Text Editor. • Copy everything to your home directory . • Install Docker Toolbox. Last prep Honest!

Recommended