3、Docker 安装与操作

dafu 1440

在CentOS 上安装Docker ,一条简单的命令就好了。

#yum -y install docker 

[root@VM-0-16-centos /]# docker version    查看docker版本信息。

Client:

 Version:         1.13.1

 API version:     1.26

 Package version:

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

 

Docker 安装了,但没有运行

[root@VM-0-16-centos /]# systemctl start docker    启动

[root@VM-0-16-centos /]# systemctl enable docker  设置开机自运行

Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.

现在就能查看Docker的详细版本信息了。

[root@VM-0-16-centos /]# docker version

Client:

 Version:         1.13.1

 API version:     1.26

 Package version: docker-1.13.1-161.git64e9980.el7_8.x86_64

 Go version:      go1.10.3

 Git commit:      64e9980/1.13.1

 Built:           Tue Apr 28 14:43:01 2020

 OS/Arch:         linux/amd64

 

Server:

 Version:         1.13.1

 API version:     1.26 (minimum version 1.12)

 Package version: docker-1.13.1-161.git64e9980.el7_8.x86_64

 Go version:      go1.10.3

 Git commit:      64e9980/1.13.1

 Built:           Tue Apr 28 14:43:01 2020

 OS/Arch:         linux/amd64

 Experimental:    false

[root@VM-0-16-centos /]# docker images    查看我们的服务上,也就是宿主主机上的所有的镜像

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

dafu_image          latest              ab058e327d23        37 hours ago        1.44 GB

docker.io/mysql     latest              be0dbf01a0f3        9 days ago            541 MB

docker.io/centos    7                   b5b4d78bc90c        6 weeks ago         203 MB

[root@VM-0-16-centos /]#

宿主主机上有三个镜像,一个是本人自己通过docker build 制作的一个包括nginx+uWSGI+Python的网站镜像,后面会介绍如何制作一个网站镜像。

第二个是数据库mysql的镜像,主要是用来存放网站的数据,没有将其与网站放在一个镜像内,主要是因为数据是最重要的,后续便于单独维护:迁移、备份等。

 

[root@VM-0-16-centos /]# docker ps -a

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                    PORTS               NAMES

1344b2ae55ee        dafu_image          "nginx -g 'daemon ..."   13 hours ago        Exited (0) 12 hours ago                       dafu_container

[root@VM-0-16-centos /]#  

系统内现在已经有一个容器,STATUS显示已经退出,没有运行,那就将这个名为dafu_container的容器运行起来。

 

没有运行的容器是进不到操作界面的。

[root@VM-0-16-centos /]# docker exec -it dafu_container /bin/bash

Error response from daemon: Container 1344b2ae55eea86d01e0729c892b8115a91efc44de81d54644787afc690f4c2e is not running

[root@VM-0-16-centos /]# docker start dafu_container    运行容器

dafu_container

[root@VM-0-16-centos /]# docker exec -it dafu_container /bin/bash  进入该容器的操作界面

[root@1344b2ae55ee nginx]#

 

为网站创建一个目录www,用来放置网站的所有的文件。

[root@1344b2ae55ee /]# mkdir www

[root@1344b2ae55ee /]# ls

anaconda-post.log  bin  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var  www

在www下创建一个我们网站的目录 mkdir dafufoto,后续我们将本地的网站CP到这个目录下。

[root@1344b2ae55ee /]# exit

Exit

退出容器,回到宿主主机

[root@VM-0-16-centos /]# ls

bin  boot  data  dev  etc  home  lib  lib64  lost+found  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

[root@VM-0-16-centos /]# docker cp /home/dafu/dafufoto/*  dafu_container:/www/

将通过FTP传上来的文件夹 dafufoto整个COPY到 dafu_container容器的www目录下。

[root@VM-0-16-centos /]# docker exec -it dafu_container /bin/bash

[root@1344b2ae55ee nginx]# cd /www

[root@1344b2ae55ee www]# ls

dafufoto

[root@1344b2ae55ee www]#

 

到现在为止,我们的网站的所有文件都已上传到网站上来了,接下来就是要安装网站运行所需要的各种环境包,这里需要一个包含环境包的列表,就是这个requirments.txt,那么这个文件怎么生成呢?别着急,我们下一篇文章来介绍。

 

最后修改于:4年前