使用 FTP 连接 Docker 容器

发布于 2025-01-10 12:02:47 字数 819 浏览 0 评论 0原文

我是 Docker 新手,我正在使用这个 Microsoft SQL Server Docker 映像

sudo docker pull mcr.microsoft.com/mssql/server:2019-latest

我已经使用来自 microsoft doc 的命令在我的 Linux 服务器上运行了容器:

    sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" \
    -p 1433:1433 --name sql1 --hostname sql1 \ 
   -d mcr.microsoft.com/mssql/server:2019-latest

当我在我的服务器上时,我可以使用 ssh 连接这个命令:

sudo docker exec -it sql1 "bash"

我的问题是我不知道如何使用 FTP 连接到这个容器。

我想在图像上安装 ftp,然后运行类似的命令:

sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" \
    -p 1433:1433 -p 21:21 --name sql1 --hostname sql1 \ 
   -d mcr.microsoft.com/mssql/server:2019-latest

但如果不删除图像,我就无法再次运行它。 如果有人能帮助我,我会很高兴。

I'm new to Docker and I'm using this Microsoft SQL Server Docker Image

sudo docker pull mcr.microsoft.com/mssql/server:2019-latest

I've run the container on my linux server with this command which is from the microsoft doc:

    sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" \
    -p 1433:1433 --name sql1 --hostname sql1 \ 
   -d mcr.microsoft.com/mssql/server:2019-latest

I can connect with ssh when I'm on my server with this command:

sudo docker exec -it sql1 "bash"

My problem is that I can't figure out how I can connect to this container with FTP.

I thought installing ftp on the image and then run with something like:

sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" \
    -p 1433:1433 -p 21:21 --name sql1 --hostname sql1 \ 
   -d mcr.microsoft.com/mssql/server:2019-latest

But I can't run it again without removing the image.
I Would be glad if someone could help me.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

白龙吟 2025-01-17 12:02:47

我没有找到获得 FTP 访问权限的方法,但主要目的是能够将文件从主机移动到容器中。

方法很简单,就像 ssh cp

sudo docker cp foo.txt containerID:/foo.txt

感谢您的回答

I did not found a way to get an FTP Access but the main purpose was to be able to move a file from the host into the container.

The way to do that is as simple as a ssh cp

sudo docker cp foo.txt containerID:/foo.txt

Thanks for the answers

怪我入戏太深 2025-01-17 12:02:47

您不是在编辑图像,而是在编辑使用该命令创建的容器。

sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" \
    -p 1433:1433 -p 21:21 --name sql1 --hostname sql1 \ 
   -d mcr.microsoft.com/mssql/server:2019-latest

只需运行该命令来创建容器并通过 和 使用该容器

docker start sql1

sudo docker exec -it sql1 "bash"

如果您想在编辑容器后获得容器的映像,请使用

docker commit sql1

或 so 。 (您可以阅读有关 docker commit 的文档以获取正确的语法。)

更新:

根据下面的评论,我建议您对 docker 文件的使用而不是 docker commit 充满信心。

You are not editing the image but the container that you create with that command.

sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" \
    -p 1433:1433 -p 21:21 --name sql1 --hostname sql1 \ 
   -d mcr.microsoft.com/mssql/server:2019-latest

Just run that command to create your container and use that container via

docker start sql1

and

sudo docker exec -it sql1 "bash"

and if you want to have an image of your container after you edited your Container, use the

docker commit sql1

or so. (You might read the documentation on docker commit for correct syntax.)

UPDATE:

As of the comments below, I'd like to recommend you to get yourself confident with the docker file usage instead of docker commit.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文