注:服务器系统为centos7,若为ubuntu请更改相应步骤
一、安装docker
1、升级包
yum update -y
2、安装docker
yum intsall docker -y
3、设置开机自启
systemctl enable docker
4、修改默认安装存储路径
主要是避免空间不够引发后续问题
docker默认安装路径/var/lib/docker
假定需要将安装目录更改到/data/sdd/docker
,并采用建立软连接方式(文中修改配置尝试未成功)
a、关闭docker服务
systemctl stop docker
b、复制之前存储路径文件到新目录
cp -rf /var/lib/docker /data/sdd/
c、备份原路径
mv -u /var/lib/docker /var/lib/docker.bak
d、建立软连接
ln -fs /data/sdd/docker /var/lib/docker
e、开启docker服务
systemctl start docker
二、docker安装centos
1、下载镜像
在centos镜像库选择需要安装的版本,这里我选择centos7
docker pull centos:centos7
2、查看镜像
docker image ls
会显示以下信息
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/centos centos7 8652b9f0cb4c 2 months ago 204 MB
IMAGE ID是关键,等一下启动需要用到
3、启动镜像
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失效
4、查看容器运行情况
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是关键
5、进入centos
docker exec -it 56168323adec /bin/bash
其中56168323adec
是容器ID,即上面提到的CONTAINER ID
回车之后边进入docker-centos的终端
三、配置centos并实现远程登录
1、升级包
yum update -y
2、安装openssl、openssh服务
yum install -y openssl openssh-server openssh-clients vim initscripts
其中initscripts
是为安装service
命令
3、修改ssh配置文件
vim /etc/ssh/sshd_config
取消PermitRootLogin yes
注释
重启ssh服务并保证开机启动ssh服务
systemctl restart ssh_d
systemctl enable ssh_d
4、使用passwd修改登录密码
passwd
5、使用ssh进行远程连接
ssh -p [port] root@[ip]
[port]
为之前启动镜像配置的宿主机端口
[ip]
为宿主机ip
四、参考
Centos7 Docker容器中报错 Failed to get D-Bus connection: Operation not permitted