We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
在 Docker 网站下载安装 Docker 。 安装完成后,打开命令行输入 docker version,如果有相关输出即安装成功。
docker version
docker 中与 container 相关的命令主要有:
container
docker container run ...
docker container ls
docker container start [container_id | container_name]
docker container stop [container_id | container_name]
docker container rm [container_id| container_name]
其中,也可以使用 docker ps 查看正在运行的容器。
docker ps
打开命令行,键入:
docker container run -it -p 8080:81 nginx
如果报错无法拉取,执行 docker login 输入账号密码登录 docker hub 账号后再执行。 在浏览器访问网站:http://localhost:8080,如果可以访问到 nginx 相关即表示运行成功。
docker login
http://localhost:8080
-p 8080:81 指定镜像在容器内运行的端口为:81,同时将端口映射到本地机器的 8080 端口,所以需要在浏览器访问 http://localhost:8080 才可。
-p 8080:81
81
8080
不同与 nginx ,运行 mysql 时可能需要设置一些变量,比如数据库密码之类的,这就需要用到 --env 参数。
--env
docker container run -d -p 3006:3036 --env MYSQL_ROOT_PASSWORD=123456 mysql
使用 docker container -it exec [container_id | container_name] 可以运行指定的容器内的程序
docker container -it exec [container_id | container_name]
首先,运行一个名为 mynginx 的容器:
mynginx
docker container run -d -p 8080:80 --name mynginx nginx
然后,调用 mynginx 的 bash 程序:
bash
docker container exec -it mynginx bash
如此,便可以在 container 内部操作环境执行命令,就像是进入了这个 container 操作环境内一样。
在上一步中,可以知道 container mynginx 的文件路径为:/usr/share/nginx/html。如果想要修改这些文件,就需要进入 container 内部进行修改,这样便会很麻烦。docker 提供了绑定挂载点的功能,这样便可以把本地机器的文件映射到 container 内部。
/usr/share/nginx/html
docker container run -d -p 8080:81 -v ~/test:/usr/share/nginx/html --nmae mynginx nginx
在本地机器的 test 文件夹,新建一个 index.html 文件,然后浏览器访问 http://localhost:8080,便可以看到刚刚保存的内容。
docker container run 的过程是首先拉取镜像,然后运行这个镜像。如此便可以制作自己的镜像。例如:
docker container run
首先新建一个文件夹,然后新建一个 index.html 文件并写入内容,然后再编写 Dockerfile 文件。
index.html
Dockerfile
FROM nginx:latest WORKDIR /usr/share/nginx/html COPY . .
然后运行 docker image build . -t mynginx-web(. 是指当前路径),便完成了镜像制作。
docker image build . -t mynginx-web
.
运行这个镜像只需要:docker container run -it -p 8080:80 mynginx-web。
docker container run -it -p 8080:80 mynginx-web
The text was updated successfully, but these errors were encountered:
No branches or pull requests
Docker
安装 Docker
在 Docker 网站下载安装 Docker 。
安装完成后,打开命令行输入
docker version
,如果有相关输出即安装成功。运行 container
docker 中与
container
相关的命令主要有:docker container run ...
:运行容器docker container ls
: 列出当前运行容器docker container start [container_id | container_name]
: 开始运行指定 id(或名称) 的容器docker container stop [container_id | container_name]
: 停止运行指定 id(或名称) 的容器docker container rm [container_id| container_name]
: 删除指定 id(或名称) 的容器其中,也可以使用
docker ps
查看正在运行的容器。运行 nginx
打开命令行,键入:
如果报错无法拉取,执行
docker login
输入账号密码登录 docker hub 账号后再执行。在浏览器访问网站:
http://localhost:8080
,如果可以访问到 nginx 相关即表示运行成功。-p 8080:81
指定镜像在容器内运行的端口为:81
,同时将端口映射到本地机器的8080
端口,所以需要在浏览器访问http://localhost:8080
才可。运行 mysql
不同与 nginx ,运行 mysql 时可能需要设置一些变量,比如数据库密码之类的,这就需要用到
--env
参数。进入 container
使用
docker container -it exec [container_id | container_name]
可以运行指定的容器内的程序首先,运行一个名为
mynginx
的容器:然后,调用
mynginx
的bash
程序:docker container exec -it mynginx bash
如此,便可以在 container 内部操作环境执行命令,就像是进入了这个 container 操作环境内一样。
绑定挂载点
在上一步中,可以知道 container mynginx 的文件路径为:
/usr/share/nginx/html
。如果想要修改这些文件,就需要进入 container 内部进行修改,这样便会很麻烦。docker 提供了绑定挂载点的功能,这样便可以把本地机器的文件映射到 container 内部。docker container run -d -p 8080:81 -v ~/test:/usr/share/nginx/html --nmae mynginx nginx
在本地机器的 test 文件夹,新建一个 index.html 文件,然后浏览器访问
http://localhost:8080
,便可以看到刚刚保存的内容。制作镜像
docker container run
的过程是首先拉取镜像,然后运行这个镜像。如此便可以制作自己的镜像。例如:首先新建一个文件夹,然后新建一个
index.html
文件并写入内容,然后再编写Dockerfile
文件。然后运行
docker image build . -t mynginx-web
(.
是指当前路径),便完成了镜像制作。运行这个镜像只需要:
docker container run -it -p 8080:80 mynginx-web
。The text was updated successfully, but these errors were encountered: