Docker is a lightweight virtualization solution that provides a lightweight, portable container for running applications in different environments. The use of Docker has become more popular. In order to facilitate operation and maintenance, we need to connect the operating system in the container to the external network. This article will introduce how to install SSH in the Docker CentOS container.
1. Copy the ssh file
First you need to generate an ssh key pair on the local host. Open the terminal on the local host and enter the following command:
ssh-keygen -t rsa
Then you will see the following system prompt:
Generating public/private rsa key pair. Enter file in which to save the key (/home/user/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again:
You need to pay attention to the following points here:
After the above operation is completed, you can find the SSH key pair as shown below in the user's home directory:
~/.ssh/id_rsa // 私钥,需要保密 ~/.ssh/id_rsa.pub // 公钥,可以放心公开
Then we need to copy the public key to the inside of the Docker container, in Enter the following command in the terminal:
docker cp ~/.ssh/id_rsa.pub container_id:/
Note that container_id here: is your container ID.
2. Install the SSH package
After completing the key copy, we need to install the SSH package in the Docker container. Here we take CentOS 7 as an example. Enter the following command in the terminal:
docker exec -it container_id yum install -y openssh-server
After the installation is successful, you need to configure SSH.
3. Configure SSH
Enter the following command in the terminal to log in to the Docker container:
docker exec -it container_id /bin/bash
Then, execute the following command in the container to create the .ssh directory:
mkdir -p ~/.ssh
Then we copy the public key we just generated locally to the Docker container:
cat /id_rsa.pub >> ~/.ssh/authorized_keys
After the above operation is completed, you need to set the SSH configuration file in the container. Also execute the following command in the Docker container:
sed -i 's/PermitRootLogin without-password/PermitRootLogin yes/g' /etc/ssh/sshd_config
The above command specifies the SSH login method of the root user to be able to log in directly, so that we can connect to the CentOS system in the Docker container through SSH.
4. Start the SSH service
After the above operations are completed, you need to start the SSH service in the Docker container. Enter the following command:
/usr/sbin/sshd
After the SSH service is started successfully, we will You can now connect to the CentOS system in the Docker container through the SSH tool.
Summary:
Through the above steps, we can easily install SSH in the Docker CentOS container and access the system in the container from the local host. This approach is very convenient and can help us perform more efficient operation and maintenance work.
The above is the detailed content of How to install ssh on docker centos. For more information, please follow other related articles on the PHP Chinese website!