contents-immutable and locking the Dock I have the following:

defaults write com.apple.Dock contents-immutable -bool yes
defaults write com.apple.Dock size-immutable -bool yes
defaults write com.apple.Dock position-immutable -bool yes


I can run them fine from the Admin account and it works, but is there a way to do this on a non-admin account? Even Sudo did not seem to work exactly.

Can I just do a chattr +i? what is the immutable string actually doing in the background?

This is running 10.9.x
The property list you are referring to is com.apple.dock.plist. Try using com.apple.dock as the domain.