added persistent port info, via pickle
opened arbitrary external ports through docker