Docker 创建容器以及管理命令(三)

1. 创建 Apache 容器

[root@centos7 ~]# docker run -d -p 80:80 httpd
// -d: 放入后台运行 // -p: 指定端口映射关系(第一个为本地端口、第二个为容器端口)

2. 创建 Nginx 容器

[root@centos7 ~]# docker run -d -p 8080:80 nginx

// 将本地的 8080 端口映射到容器的 80 端口;

 

3. 查看容器

[root@centos7 ~]# docker ps -a

// docker ps 命令时查看运行中的容器
// -a 选项是查看所以容器(不论容器属于什么状态)

4. 测试容器是否启动成功

 测试HTTP服务80端口:

 

测试nginx服务8080端口:

 

5. 查看 docker 标准输出

[root@centos7 ~]# docker ps -a
[root@centos7 ~]# docker logs “容器ID”

6. 停止和启动容器

# 查看容器ID:
[root@centos7 ~]# docker ps -a
# 停止容器,使用容器ID来指定: [root@centos7
~]# docker stop “容器ID”
# 再次查看容器运行状态: [root@centos7
~]# docker ps -a # 启动已停止的容器,ID来指定: [root@centos7 ~]# docker start “容器ID”
# 再次查看容器运行状态: [root@centos7
~]# docker ps -a

7. 删除容器

# 查看容器:
[root@centos7 ~]# docker ps -a
# 强制删除容器(谨慎使用该命令) [root@centos7
~]# docker rm -f “容器ID”

8. 查询端口映射

[root@centos7 ~]# docker port “容器ID”
80/tcp -> 0.0.0.0:80

9. 容器为任务而生

[root@centos7 ~]# docker run httpd echo "www"
www
[root@centos7 ~]# docker ps -a

10.进入容器修改内容

[root@centos7 ~]# docker exec -it “容器ID” /bin/bash
root@f1507b05b31c:/usr/local/apache2#        # 已经入容器

root@f1507b05b31c:/usr/local/apache2/htdocs# pwd
/usr/local/apache2/htdocs
root@f1507b05b31c:/usr/local/apache2/htdocs# echo Hello > index.html

注:容器本身是个精简化的东西,未自带vi和vim命令,在未安装之前我们简单通过重定向进入测试。

测试:

11. 查询容器详细信息

[root@centos7 ~]# docker inspect “容器ID”

12. 复制本地文件到容器中

[root@centos7 ~]# docker cp /etc/profile 容器ID:/root
[root@centos7 ~]# docker exec -it f15 /bin/bash

// “f15” 是容器的省略ID

13. 本地目录跟容器目录挂载

创建本地挂载目录:

[root@centos7 ~]# mkdir /root/httpd_data

创建容器:

[root@centos7 ~]# docker run -d -p 80:80 -v /root/httpd_data:/usr/local/apache2/htdocs  --privileged=true  httpd
// -v 本地目录/root/httpd_data 容器目录/usr/local/apache2/htdocs
// --privileged=true 关闭安全权限,否则你容器操作文件夹没有权限

测试目录是否挂载成功:

# 在本地挂载的目录下创建一个文件,我这里创建的是HTML文件
[root@centos7 ~]# cd httpd_data/ [root@centos7 httpd_data]# cat test.html Test

进入容器目录查看是否已创建:

# 进入容器
[root@centos7 httpd_data]# docker exec -it 24 /bin/bash

# 进入挂载目录 root@246f1a196a9b:
/usr/local/apache2# ls bin build cgi-bin conf error htdocs icons include logs modules root@246f1a196a9b:/usr/local/apache2# cd htdocs/

# 查看文件内容 root@246f1a196a9b:/usr/local/apache2/htdocs# ls test.html root@246f1a196a9b:/usr/local/apache2/htdocs# cat test.html Test

# 完成容器目录跟本地目录的挂载!

这是一些Docker的简单而常用的命令,更多命令可以使用“--help”来了解使用。

猜你喜欢

转载自www.cnblogs.com/l-hh/p/10772942.html