注:服务器系统为centos7,若为ubuntu请更改相应步骤
yum update -y
yum intsall docker -y
systemctl enable docker
主要是避免空间不够引发后续问题
docker默认安装路径/var/lib/docker
假定需要将安装目录更改到/data/sdd/docker
,并采用建立软连接方式(文中修改配置尝试未成功)
systemctl stop docker
cp -rf /var/lib/docker /data/sdd/
mv -u /var/lib/docker /var/lib/docker.bak
ln -fs /data/sdd/docker /var/lib/docker
systemctl start docker
在centos镜像库选择需要安装的版本,这里我选择centos7
docker pull centos:centos7
docker image ls
会显示以下信息
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/centos centos7 8652b9f0cb4c 2 months ago 204 MB
IMAGE ID是关键,等一下启动需要用到
docker run -p 8050:22 --restart=always --privileged=true -v /data/sda/sharedata:/share -itd 8652b9f0cb4c /usr/sbin/init
-p 8050:22
:将docker-centos中的22端口映射到宿主机的8050端口,用于ssh远程登录
--restart=always
:docker重启后自动重启
--privileged=true
:开启超级权限
-v /data/sda/sharedata:/share
:-v表示与宿主机的共享目录,这里表示将宿主机的/data/sda/sharedata
目录映射到/share
目录
-itd 8652b9f0cb4c
:启动所用到的镜像,这里的8652b9f0cb4c是镜像ID,即之前的IMAGE ID
/usr/sbin/init
:使用init其中,这样可以避免docker-centos中的systemctl失效
docker ps -a
会出现以下信息
CONTAINER ID IMAGE COMMAND CREATED STATUS
56168323adec 8652b9f0cb4c "/usr/sbin/init" About an hour ago Up About an hour
dd0f5f535866 8652b9f0cb4c "/usr/sbin/init" About an hour ago Up About an hour
CONTAINER ID是关键
docker exec -it 56168323adec /bin/bash
其中56168323adec
是容器ID,即上面提到的CONTAINER ID
回车之后边进入docker-centos的终端
yum update -y
yum install -y openssl openssh-server openssh-clients vim initscripts
其中initscripts
是为安装service
命令
vim /etc/ssh/sshd_config
取消PermitRootLogin yes
注释
重启ssh服务并保证开机启动ssh服务
systemctl restart ssh_d
systemctl enable ssh_d
passwd
ssh -p [port] root@[ip]
[port]
为之前启动镜像配置的宿主机端口
[ip]
为宿主机ip
服务器安装Docker-Linux并配置远程登录
reboot 后 Docker服务及容器自动启动设置
两种方法迁移 Docker 的默认安装(存储)目录
Docker和宿主机之间共享文件
CentOS安装scp命令
docker中centos7安装ssh服务
Centos7 Docker容器中报错 Failed to get D-Bus connection: Operation not permitted