2017-10-04 3 views
8

「mynet」というネットワークがあり、IPアドレスが192.168.23.2にバインドされたコンテナを起動したいとします。docker-py:IPアドレスをコンテナにバインドする方法

私が始めているコードは次のとおりです。

import docker 
c = docker.from_env() 
c.containers.run('containername', 'sh some_script.sh', network='mynet') 

私はここから何をしますか?私は効果的にオプションに相当するものをdocker runから探しています。

答えて

2

あなたはネットワークを作成し、それにコンテナを接続する必要があります。

container = c.containers.run('containername', 'sh some_script.sh') 

ipam_pool = docker.types.IPAMPool(
    subnet='192.168.23.0/24', 
    gateway='192.168.23.1' 
) 
ipam_config = docker.types.IPAMConfig(
    pool_configs=[ipam_pool] 
) 
mynet= c.network.create(
    "network1", 
    driver="bridge", 
    ipam=ipam_config 
) 

ip = {"ipv4_address": "192.168.23.2"} 
mynet.connect(container,ip) 
+0

だけでは、これを追加すると、助けていないようです。 https://gist.github.com/markzz/3f25719a37f85bc851aa10e3b9c0ee5f – markzz

+0

これは、pythonがインストールされたパッケージをどのように変更するのに役立ちます:https://stackoverflow.com/questions/23075397/python-how-to-edit-an-インストールされたパッケージ – anhlc

+0

私はパッケージに変更を加える方法を知っています... – markzz

関連する問題