* Initial conversion of vagrant to use qmkfm/base_container * Fix vagrant when using docker provider * Workaround for VirtualBox VM restarts * Generalise Vagrant docs slightly and add FAQ
		
			
				
	
	
		
			33 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
FROM qmkfm/base_container
 | 
						|
 | 
						|
# Basic upgrades; install sudo and SSH.
 | 
						|
RUN apt-get update && apt-get install --no-install-recommends -y \
 | 
						|
        sudo \
 | 
						|
        openssh-server \
 | 
						|
    && rm -rf /var/lib/apt/lists/*
 | 
						|
RUN mkdir /var/run/sshd
 | 
						|
RUN sed -i 's/PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
 | 
						|
RUN echo 'UseDNS no' >> /etc/ssh/sshd_config
 | 
						|
 | 
						|
# Remove the policy file once we're finished installing software.
 | 
						|
# This allows invoke-rc.d and friends to work as expected.
 | 
						|
RUN rm /usr/sbin/policy-rc.d
 | 
						|
 | 
						|
# Add the Vagrant user and necessary passwords.
 | 
						|
RUN groupadd vagrant
 | 
						|
RUN useradd -c "Vagrant" -g vagrant -d /home/vagrant -m -s /bin/bash vagrant
 | 
						|
RUN echo 'root:vagrant' | chpasswd
 | 
						|
RUN echo 'vagrant:vagrant' | chpasswd
 | 
						|
 | 
						|
# Allow the vagrant user to use sudo without a password.
 | 
						|
RUN echo 'vagrant ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/vagrant
 | 
						|
 | 
						|
# Install Vagrant's insecure public key so provisioning and 'vagrant ssh' work.
 | 
						|
RUN mkdir /home/vagrant/.ssh
 | 
						|
ADD https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub /home/vagrant/.ssh/authorized_keys
 | 
						|
RUN chmod 0600 /home/vagrant/.ssh/authorized_keys
 | 
						|
RUN chown -R vagrant:vagrant /home/vagrant/.ssh
 | 
						|
RUN chmod 0700 /home/vagrant/.ssh
 | 
						|
 | 
						|
EXPOSE 22
 | 
						|
CMD ["/usr/sbin/sshd", "-D"]
 |