linux下docker安装ubuntu

docker

安装ubuntu18.04镜像

docker pull ubuntu:18.04
18.04这个是版本号,可根据需要修改成自己要的版本

查看安装好的镜像
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu 18.04 8d5df41c547b 11 days ago 63.1MB

运行镜像

docker run -itd --privileged=true --name ubuntu18 ubuntu:18.04
privileged使用该参数,container内的root拥有真正的root权限,
使用–name命令容器为ubuntu18, 可以改成自己需要的名字,后面会用到。

运行后,查看容器
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5fd7afa11989 ubuntu:18.04 “bash” 22 seconds ago Up 21 seconds ubuntu18

进入容器
docker run中使用–name命令后,可以直接使用这个name进入,这样比使用一长串id(比如此例的5fd7afa11989)的方式来方便许多。
登录虚拟机ubuntu
docker exec -it ubuntu18 /bin/bash

安装应用

apt-get update
这步很重要,否则装不了软件
apt-get install vim

docker ubuntu中文乱码

打开bash.bashrc
vi /etc/bash.bashrc
添加:
export LC_ALL=“C.UTF-8”
然后:
source /etc/bash.bashrc

ssh登录docker

想可以远程ssh登录docker下的虚拟机,还需要一些操作。

docker中安装ssh服务

apt install openssh-server
service ssh start
docker开机启动sshd,修改
/etc/bash.bashrc
添加
service ssh start

安装完要进行commit保存,否则重启后ssh修改会丢失
docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b35788b503a2 ubuntu:18.04 “/bin/bash” 4 months ago Up 3 months ubuntu18
得到CONTAINER ID为b35788b503a2
退出虚拟机,在主机中执行进行保存
docker commit b35788b503a2 ubuntu18

然后就可以直接通过ssh登录docker了,运行命令如下:
docker run -it --privileged=true -v /home/xx/aa:/aa -d -p 2222:22 --name=ubuntu18 ubuntu:18.04 /usr/sbin/sshd -D
其中-v用来mount本地目录到docker中,比如-v /xx/aa:/aa 代表把本地/xx/aa目录映射到docker中的/aa目录, 这样可以在docker中的ubuntu中访问主机的目录。
-p 2222:22用来把虚拟机的2222映射到主机的22端口,主机22端口是ssh端口,
这样做的好处是可以通过2222端口与虚拟机进行ssh交互, 比如登录ssh: “ssh 虚拟机ip -p 2222”。
作者:帅得不敢出门 谢绝转载

猜你喜欢

转载自blog.csdn.net/zmlovelx/article/details/128812781